포스트

[JAVA] 배열(array)

1. 배열(array)이란?


array

  • 배열은 자료형의 종류가 아닌 자료형의 집합을 의미한다.
  • 안에 값이 들어가는 것이 아니라 값의 주소값이 들어가 있다.
  • 고정된 길이를 갖는 연속된 공간이다.(크기가 처음부터 정해져 늘리거나 줄일 수 없다.)
  • 같은 타입(자료형)의 여러 변수를 하나의 대표적인 변수로 묶음
    (<-> 클래스 : 다른 타입의 여러 변수를 하나의 대표적인 변수로 묶음)

2. 배열의 선언 및 초기화


2.1. 배열의 선언

1
2
3
4
데이터타입[] 변수명;  
데이터타입 변수명[];  
변수명 = new 데이터타입[배열길이];  
데이터타입[] 변수명 = new 데이터타입[배열길이];  

2.2. 배열의 선언 및 초기화

1
2
int[] array1 = {10, 20, 30, 40, 50};
System.out.println(array1)
1
[I@668bc3d5  

배열을 그대로 출력하게 되면 배열의 주소값이 출력된다.

3. 배열의 출력


배열은 위처럼 바로 출력하게 되면 주소값만 나오게 되므로
아래의 방법을 사용해야 출력값을 볼 수 있다.

3.1. 반복문을 이용한 출력

1
2
3
for (int i = 0; i < array1.length; i++) {
            System.out.print(array1[i] + " ");
}
1
10 20 30 40 50

3.2. toString() 메소드

1
2
3
import java.util.Arrays;
...
    System.out.println(Arrays.toString(array1));
1
[10, 20, 30, 40, 50]

python list처럼 보이지만 출력을 위한 문자열값이다.

3.3. 향상된 for문

1
2
3
for (String s : array1) {  // 배열값을 s로 지정해서 배열값 하나씩
    System.out.print(s + " ");
}
1
10 20 30 40 50

4. 다차원 배열


arraydim2차원 배열

2차원 배열을 예로 들면, 2차원 배열은 배열 안에 다른 배열을 넣어 만든다.

1
2
3
4
5
6
7
8
int[][] array2 = new int[7][7];

for (int i = 0; i < array2.length; i++) {
    for (int j = 0; j < array2[i].length; j++) {
        System.out.print(array2[i][j] + " ");
    }
    System.out.println();
}
1
2
3
4
5
6
7
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0

배열의 길이만 지정하면 기본값은 0으로 출력된다.

이 기사는 저작권자의 CC BY 4.0 라이센스를 따릅니다.