백엔드/Java

배열 생성 및 값 추가

홍수성찬 2023. 4. 16. 19:34

자바를 배우고 나서 사용하지 않은 시간이 너무 오래되어서 그런지 자바 코드 활용을 전혀 하지 못했다. 다 까먹고 잊어버렸다.

배열을 사용하는 경우에도 그러했다.

그래서 다시 복습하고, 다시는 잊어버리지 않기 위해 기록한다.

 

배열 선언

배열을 선언하는 방법은 여러가지가 있다.

그 방법들을 알아보기로 하자.

 

첫 번째로, 배열을 선언하고 값을 초기화하는 것이다. 아래의 방법처럼 배열을 선언하고 배열을 초기화할 수 있다. 그러나, 이 방법은 나중에 값을 추가하는 것은 어렵다. 값을 넣고 싶다면, 선언할 때 값을 넣어야 한다.

int[] array = {};

 

두 번째로, 배열을 선언하고, 배열의 길이를 설정할 수 있다. 아래처럼 작성할 경우, 배열을 선언하고 길이까지 설정할 수 있다. 그리고, 첫 번째 방법과 달리, 나중에 값을 추가할 수 있다.

// 배열 선언 및 길이 선언
int[] array = new Int[length];

// 값 추가
array[0] = 10;

// 길이만큼 반복문을 통해 값 추가
for (int i = 0; i < array.length; i++) {
	array[i] = 추가할 값;
}

 

세 번째로, ArrayList 방법을 사용하는 것이다. 위와 방법과 특징은 비슷하지만, 선언 방법과 값을 추가하는 방법이 다르다. 특히, 선언할 때는 타입을 꼭 초기화해야 한다. String, Int, Boolean 등 배열리스트에 값을 넣을 때, 값들의 타입이 무엇인지 설정해야 한다.

// 배열리스트 선언
ArrayList<String> stringList = new ArrayList<>();
ArrayList<Integer> intList = new ArrayList<>();

// 값 추가
list.add(1);

 

만약, 값을 출력하고 싶다면 아래와 같이 사용해 출력할 수 있다.

// ArrayList를 사용했을 경우
System.out.print(list);

// Int[]를 사용했을 경우
System.out.print(Arrays.toString(list));

 

배열에 값이 들어있으니, 하나의 값이 아닌 여러 개의 값이 있을 것이다. 반복문을 돌리고 싶다면 "for문"과 "for each문"을 활용할 수 있다.

int[] iarr = {10, 20, 30, 40, 50};

// for문
for (int i = 0; i < iarr.length; i++) {
	int value = iarr[i];
    System.out.println(value);
}

// for each문
for (int value:iarr) {
	System.out.println(value);
}

위에서 확인한 바와 같이, for문보다는 for each문을 사용하면 코드를 더 간결하게 구현할 수 있다.

 

또한, 여러가지 방법들이 있지만, 기본적으로 사용할 수 있는 배열 선언 및 값 초기화, 추가 방법이다. 다 알고 있었던 부분이지만, 아주 사소한 부분을 모르고 있어서 제대로 사용하지 못했다. 예를 들어, new를 빼먹거나, 타입을 미리 선언하지 않는 등 그래서 에러를 마주하게 됐다. 이번 기회에 제대로 기억해두어야겠다.