본문 바로가기
Java

자바 요약 정리 - 배열

by sycareer 2021. 7. 8.

9. 배열

1) 배열 선언 : 배열 선언 시 변수선언과 마찬가지로 stack 영역에 주소를 보관하는 공간이 생김.

           - 변수 : 값을 담는 변수

           - 참조 변수(레퍼런스 변수) : 주소값을 담는 변수

 

2) 배열 할당 : 배열에 담을 값들이 몇 개 들어갈지 배열 할당으로 크기를 반드시 미리 지정해두어야 한다.

           new 연산자로 배열 할당시 메모리 heap 영역에 해당 배열 크기만큼 공간 생성.

           해당 공간에 고유한 주소값 부여, 주소값을 stack 영역의 참조 변수에 저장.

 

3) 길이

           - 문자열의 길이 : length( )

           - 배열의 길이 : length

 

4) 배열선언과 할당 동시에 하고 초기화

- 중괄호 블록 사용시 new 연산자 사용하지 않아도 됨. 값의 개수만큼 자동으로 크기 할당.

 

5) 배열 복사

- 얕은 복사 : 배열의 주소만을 복사 -> 같은 주소값을 가지므로 사본을 수정하면 원본도 수정됨.

- 깊은 복사 : 동일한 배열을 하나 더 생성하여 실제 내부값을 복사

           - for

           - System.arraycopy( ) 메소드 : 인덱스와 개수 지정하고 싶을 때 사용. 복사본 배열 크기 유지.

           - Arrays.copyOf( ) 메소드 : 복사하고자 하는 것을 복사하고 크기도 다시 지정할 때 사용.

           - clone( ) 메소드 : 시작인덱스 지정 안됨. 원본배열 통째로 복사해서 새로운 배열 할당.

 

6) 정렬

- 삽입 정렬 : 배열의 n번 인덱스 값을 0~n-1번까지 비교

- 선택 정렬 : 배열의 n번 인덱스 값을 n+1~마지막까지 비교

 

7) 컬렉션과 다른 배열의 특징

- 같은 타입의 데이터만 저장할 수 있음

- 한 번 생성된 배열의 길이를 변경할 수 없음.

'Java' 카테고리의 다른 글

자바 요약 정리 - 이차원배열  (0) 2021.07.12
자바 요약 정리 - 객체배열  (0) 2021.07.12
자바 요약 정리 - 컬렉션  (0) 2021.07.08
자바 요약 정리 - API  (0) 2021.07.06
자바 요약 정리 - 다형성  (0) 2021.07.06