반응형
배열의 초기화
배열을 생성하면 기본적으로 배열의 타입에 해당하는 기본 값으로 초기화된다. 그러므로 따로 초기화를 반드시 할 필요는 없지만 특정한 값을 저장하려면 요소마다 값을 저장해야 한다.
int[] student = new int[3]; // 길이가 3인 배열 생성
student[0] = 30; // 배열의 첫번째 요소에 30을 저장
student[1] = 20; // 배열의 두번째 요소에 20을 저장
student[2] = 10; // 배열의 세번째 요소에 10을 저장
배열에 요소를 저장 할 때 인덱스를 통해 일일이 접근하지 않고 값을 저장하는 방법도 있다.
타입[] 배열이름 = new타입 {요소1, 요소2, 요소3, ...};
int[] ar = null;
ar = new int[] {1, 2, 3}; // new타입[] 생략가능
타입[] 배열이름 = {요소1, 요소2, 요소3, ...};
배열의 요소가 순차적으로 늘어나거나 규칙적일 경우 반복문으로 초기화를 하는 방법도 있다.
int[] arr = new int[100];
for(int i=0; i<arr.length; i++){
arr[i] = i+1 // {1, 2, 3, 4, 5, 6, ... , 100}
}
배열의 출력
배열의 길이를 출력하는 방법
배열이름.length
배열의 요소를 출력하는 방법
① 배열의 요소를 하나하나 출력
int[] num = {1,2,3,4,5}; // 배열의 생성
System.out.println(num[0]);
System.out.println(num[3]);
결과
1
4
② 배열의 모든 요소를 출력
int[] num = {1,2,3}; // 배열의 생성
System.out.println(num[0]);
System.out.println(num[1]);
System.out.println(num[2]);
// 위의 경우 반복되는 코드들이 생기므로 아래와 같이 반복문을 활용해 코드의 길이를 줄여준다.
for(int i=0; i<num.length; i++){ // 배열의 길이로 인덱스 값을 지정해준다.
System.out.println(num[i]); // num[0], num[1], num[2]
}
결과
1
2
3
③ Arrays.toString()메서드를 사용해 출력하는 방법이다.
import 필수! (import java.util.Arrays)
int[] num = {1,2,3}; // 배열의 생성
System.out.println(Arrays.toString(arr)); // 배열의 요소를 문자열로 바꾸어 출력
결과
[1, 2, 3]
plus arraycopy()
배열은 정적 리스트static list이다. 한번 생성된 배열의 길이는 변경할 수 없기 때문이다. 배열에 저장할 공간이 부족할 경우 더 큰 길이의 배열을 생성한 후 기존 배열의 값을 복사할 수 있다. 이때 System클래스의 arraycopy() 메소드를 사용할 수 있다. System.arraycopy()는 지정된 범위의 값들을 한번에 통째로 복사하는 기능을 제공한다.
반응형
'Java > Java 기초문법' 카테고리의 다른 글
[JAVA 기초] 자바 배열(Array) - 다차원 배열, deepToString, arraycopy 메서드 (0) | 2021.03.06 |
---|---|
[JAVA 기초] 자바 배열(Array) - 3 foreach문, 예제 (0) | 2021.03.05 |
[JAVA 기초] 자바 배열(Array) - 1 선언과 생성 (0) | 2021.03.04 |
[JAVA 기초] 제어문 - 반복문 (break, continue) (0) | 2021.03.03 |
[JAVA 기초] 자바 문자열 비교 (연산자 ==와 메서드 equals와 차이) (0) | 2021.03.03 |
댓글