자료형[] 배열이름 = new 자료형[개수];
자료형 배열이름[] = new 자료형[개수];
선언과 동시에 값이 초기화됨
int[] studentID = new int[] {101, 102, 103};
[개수]
에 개수를 쓰면 오류가 발생함new int[]
생략 가능new int[]
생략 불가int[] studentID;
studentID = new int[] {101, 102, 103};
방법
기존 배열과 배열 길이가 같거나 더 긴 배열을 만들고 for문을 사용하여 각 요소 값을 반복해서 복사
System.arraycopy(src, srcPos, dest, destPos, length)
매소드 사용
매개변수 | 설명 |
---|---|
src | 복사할 배열 이름 |
srcPos | 복사할 배열의 첫 번째 위치 |
dest | 복사해서 붙여 넣을 대상 배열 이름 |
destPos | 대상 배열 붙여넣기 시작 위치 |
length | src에서 dest로 복사할 요소 개수 |
public class Main {
public static void main(String[] args) {
int[] array1 = {10, 20, 30, 40, 50};
int[] array2 = {1, 2, 3, 4, 5};
System.arraycopy(array1, 0, array2, 1, 4);
for(int i = 0; i < array2.length; i++) {
System.out.println(array2[i]);
}
}
}
/*
1
10
20
30
40
*/
객체 배열을 복사할 때 기존 인스턴스의 주소값을 복사하므로
복사되는 배열의 인스턴스 값이 변경되면 복사한 배열에도 영향이 있음.
for (변수:배열) {
반복실행문
}
public class Main {
public static void main(String[] args) {
String[] strArray = {"Java", "Android", "C", "Python"};
for(String lang : strArray) {
System.out.println(lang);
}
}
}
/*
Java
Android
C
Python
*/
메소드 | 설명 |
---|---|
boolean add(E e) | 요소 하나를 배열에 추가. E는 요소의 자료형 의미 |
int size() | 배열에 추가된 요소 전체 개수 반환 |
E get(int index) | index 위치에 있는 요소 값 반환 |
E remove(int index) | index 위치에 있는 요소 값 제거하고 반환 |
boolean isEmpty() | 비어있는지 확인 |
ArrayList
를 작성하고 Ctrl + 마우스 우클릭
하면 해당 클래스 설명을 볼 수 있음ArrayList<E> 배열이름 = new ArrayList<E>(); //<E>와 같은 형태를 '제네릭'자료형이라고 함
<>
안에는 사용할 객체의 자료형을 쓰면 됨import java.util.ArrayList;
박은종, 『Do it! 자바 프로그래밍 입문』, 이지퍼블리싱(주)