[JAVA] 배열(Array)

2020. 4. 7. 14:06JAVA

배열?

동일한 Data Type 의 데이터를 저장하는 자료구조 이며, 그룹화 하여 데이터를 저장한다고 생각하면 간단하다.

 

배열을 왜 사용하는가?

동일한 데이터 타입에 한하여 관리하기가 편리하며 변수 선언 또한 줄여주어 불필요한 코드를 줄여준다.

 

배열 선언 은 어떻게 하는가?

크게 두가지 방법이 있다.

 

첫번째 선언 방법

DataType [] 변수명 = {첫번째 데이터, 두번째 데이터, 세번째 데이터, …};

ex) int [] arrayex = {1, 2, 3};

//선언과 동시에 값을 초기화 시켜주는 방식이다. 이는 데이터 값을 이미 알고 있을경우 사용하면 편리하다.

 

예제)

배열을 출력 할 때는 배열명[출력 하고 싶은 인덱스] 를 입력 하면 된다.

 

두번째 선언 방법

DataType [] 변수명 = new Datatype[배열크기]; 

변수명[배열 크기에 따른 저장 공간] = 입력할 데이터;

ex) int [] arrayex2 = new int[3];

      arrayex2[0] = 2;

//첫번째 방법과 반대로 초기화 시켜줄 데이터 값을 현재 모를 경우 사용한다.

예제)

배열에 구조 및 특징

1. 배열에는 배열의 크기(length) 가 존재 하는데 많이들 헷갈리는 부분은 length 는 1부터 시작되며 구분자(index) 는 0부터 카운트가 된다.

간단하게, 배열의 크기는 방의 갯수 이며 구분자(index) 는 데이터가 존재하는 공간 즉 방이라고 생각하면 이해가 편할것이다.

ex) String [] arrayLength =. new String [3]; = 배열의 크기(length) 는 3이며 구분자(index) 는 0부터 카운트 해서 2까지 이다.

++ 배열의 크기(length)를 알고싶을 경우에는 배열명.length 를 하면 알수 있다.

 

2. 배열를 출력할 경우 구분자(index) 값을 입력하지 않을 경우 배열의 타입@내부 주소가 출력된다. 

예제)

위의 예제와 같이 첫번째 출력시에는 인덱스 값을 입력하지 않았으므로 배열의 데이터 타입@내부 주소가 출력되는걸 볼수 있다.

두번째 출력시 arrayLength 의 배열에 0번째 인덱스 값을 초기화 시키지 않았으므로 값은 null 이 된다.

세번째 출력시 첫번째 인덱스는 초기화 시켰으므로 출력시 정상적으로 출력 되는것을 볼수 있다.

'JAVA' 카테고리의 다른 글

[JAVA] Map(HashMap)  (1) 2020.04.22
[JAVA] List - ArrayList  (2) 2020.04.12
[JAVA] 배열(Array)의 응용  (0) 2020.04.07
[JAVA] 변수(variable)의 종류  (0) 2020.03.26
[JAVA] 변수(variable) & 상수(Constant)  (0) 2020.03.24