오늘은 자바 배열에 대해 이야기해볼까 한다

배열이란 같은 타입의 데이터를 연속된 공간에 나열하고, 각 데이터에 인덱스를 부여해놓은 자료구조이다. 인덱스는 쉽게 말하면 배열 속 데이터의 순서를 숫자로 정해놓은 것이다. 리스트와 비슷한 개념이다.

배열은 왜 쓰는 것일까? 배열을 사용하는 이유는 다음과 같다.

만약 당신이 매우 많은 같은 종류의 수많은 데이터들을 정리해서 계산하고 사용해야한다고 생각해보라, 예를 들어 1부터 10까지의 값으로 평균값을 구하거나 때에 맞게 사용해야 한다면, 각각 10개의 변수를 모두 선언해 다음과 같이 해야 할 것이다.

int num1 = 1;
int num2 = 2;
int num3 = 3;
int num4 = 4;
int num5 = 5;
int num6 = 6;
int num7 = 7;
int num8 = 8;
int num9 = 9;
int num10 = 10;

그런데 만약 이게 10개가 아니라 100개면? 설마 100개의 모든 값을 다 일일히 변수로 선언해 저장하고 사용하고 싶지는 않을 것이다. 이런 경우를 위해 배열을 사용한다. 배열은 이렇게 동일한 타입의 여러 데이터를 한 배열 안에서 한번에 전부 선언하고 정리할 수 있다.

배열은 1차원, 2차원, 3차원...n차원 배열 등 다양한 차원의 배열들을 생성할 수 있다. 보통은 1차원과 2차원 배열에서 대부분 해결된다. 이 차원의 정의는 얼마나 많은 배열들이 중첩되어 있는지이다. 1차원 배열은 말 그대로 1차원, 즉 일자로 데이터를 한 줄로 정리하는 것이고, 2차원은 행과 열로 평면에 데이터를 저장하는 것이고, 3차원은 3차원으로 직육면체를 그리듯 데이터를 저장하는 것이다.


1인칭 2인칭 3인칭 배열의 형태이다.

이제 이 배열을 선언하는 방법에 대해 말해보자. 배열은 다음과 같이 선언한다

데이터 자료형[] 배열을 넣을 변수명 = new 데이터 자료형[배열의 크기];

예를 들어, 30명의 학생의 시험성적을 저장할 배열을 만들고 싶다면,

int[] scores = new int[30];

이런식으로 짜주면, 30칸의 길이를 가진 메모리를 할당하는 배열이 만들어진다.
(선언문 따로, 배열 넣는 것 따로 두문장으로 적을 수도 있다)
배열은 0부터 메모리를 세기 시작하므로, 배열의 특정 번째 값을 편집하려면 0부터 센 값의 번째로 계산해야 한다. 배열에 접근해 몇번째 값을 사용하고 싶다면,

배열명[번째수];

와 같이 적으면, 그 배열의 해당 번째 값에 접근할 수 있다. 이것을 출력하거나 변수에 넣어 사용할 수 있다.

1차원은 [] 한개, 2차원은 [][] 이렇게 두개, 3차원은 세개 등으로 배열의 차원이 늘어날수록 대괄호 개수와 안에 넣을 수들이 늘어난다.

오늘은 1차원 배열만으로 포스팅을 마치겠다.

profile
life

0개의 댓글