반응형
# 배열 (array)
- 정의 : '같은 타입' 의 여러 변수를 '하나의 묶음' 으로 다루는 것.
- 인덱스 (index) : 배열의 '요소(저장공간)' 마다 붙여진 '일련번호' , 인덱스 범위는 '0부터 배열길이-1' 까지.
- 배열의 길이 : 배열의 '요소(저장공간)의 개수' 를 의미. (int 범위의 양의 정수(0포함) 이어야 함)
- 배열은 한 번 선언되고 나면 길이를 변경할 수 없다.
## 배열 선언방법
방법 1)
타입[] 변수이름;
방법 2)
타입 변수이름[];
다차원 배열)
타입[][] 변수이름;
타입 변수이름[][];
타입[] 변수이름[];
## 배열 생성방법
타입[] 변수이름; // 배열 선언 (= 배열을 다루기 위한 '참조 변수' 선언)
변수이름 = new 타입[길이] // 배열 생성 (실제 저장공간 생성)
다차원 배열)
타입[][] 변수이름 = new 타입[길이][길이];
## 배열의 길이 확인방법
배열이름.length // 배열이름.length 는 상수로 읽기만 가능 (변경 불가)
## 배열의 길이 변경방법
- 더 큰 배열을 새로 생성
- 기존 배열의 내용을 새로운 배열에 복사
## 배열 복사방법
- 방법1) for 문을 이용한 배열 복사.
int[] arr = new int[5]; // 기존 배열
int[] tmp = new int[arr.length*2]; // 기존 배열을 저장할 새 배열(기존 배열의 2배 길이)
for (int i = 0; i < arr.length; i++)
tmp[i] = arr[i]; // arr[i] 값을 tmp[i] 에 저장.
arr = tmp; // 참조변수 arr이 tmp를 가리키게 함.
- 방법2) System.arraycopy() 를 이용한 배열 복사. (간단하고 빠르게 복사가능, 효율적)
System.arraycopy(arr, 0, tmp, 0, arr.length);
=>
arr[0] 에서 tmp[0] 으로 arr.length 개의 데이터를 복사.
반응형
'프로그래밍 > 자바, JDBC' 카테고리의 다른 글
컬렉션 프레임웍 (0) | 2023.02.21 |
---|---|
switch 문의 제약조건 (0) | 2023.02.19 |
연산자와 피 연산자 (0) | 2021.09.27 |
형 변환(캐스팅, casting) (0) | 2021.09.27 |
자바에서 자주 발생하는 에러와 해결방법 (0) | 2021.09.23 |