ArrayList
와 배열은 자바에서 데이터를 저장하는 두 가지 다른 자료구조입니다. 각각의 특성과 사용 목적이 다르기 때문에, 상황에 따라 적절한 자료구조를 선택해야 합니다.
ArrayList
는 동적으로 크기가 조절됩니다. 요소를 추가하거나 제거할 수 있습니다.ArrayList
는 객체만 저장할 수 있습니다. 기본형(int, char 등)을 저장하려면 해당 기본형의 래퍼 클래스(Integer, Character 등)을 사용해야 합니다.배열과 ArrayList
는 각기 다른 목적과 사용 방법을 가지고 있으므로, 상황에 따라 변환이 필요할 수 있습니다. 예를 들어, 데이터가 동적으로 변하는 경우 ArrayList
를 사용하는 것이 편리합니다. 그러나, 특정 메소드나 라이브러리가 배열을 요구할 때가 있습니다. 이럴 때 ArrayList
를 배열로 변환하는 작업이 필요할 수 있습니다.
다음은 ArrayList
와 배열 간의 변환 방법입니다.
import java.util.ArrayList;
import java.util.Arrays;
public class ArrayListToArray {
public static void main(String[] args) {
// ArrayList 생성 및 값 추가
ArrayList<Integer> arrayList = new ArrayList<>();
arrayList.add(1);
arrayList.add(2);
arrayList.add(3);
// ArrayList를 배열로 변환
Integer[] array = new Integer[arrayList.size()];
arrayList.toArray(array);
// 결과 출력
System.out.println(Arrays.toString(array)); // [1, 2, 3]
}
}
import java.util.ArrayList;
import java.util.Arrays;
public class ArrayToArrayList {
public static void main(String[] args) {
// 배열 생성
Integer[] array = {1, 2, 3};
// 배열을 ArrayList로 변환
ArrayList<Integer> arrayList = new ArrayList<>(Arrays.asList(array));
// 결과 출력
System.out.println(arrayList); // [1, 2, 3]
}
}
ArrayList
와 배열은 서로 변환할 수 있으며, 각 자료구조의 장점을 활용하여 프로그램을 작성할 수 있습니다.