ArrayList는 Java의 컬렉션 프레임워크(Collection Framework)에 속하는 클래스입니다. ArrayList는 배열을 기반으로 한 동적 배열(dynamic array) 자료 구조를 제공하는 클래스로, 크기가 동적으로 조절되며 객체를 저장할 수 있는 데이터 구조입니다.
ArrayList는 Java 표준 라이브러리(java.util 패키지)에 포함되어 있으며, 특정 데이터 형식으로 래핑(Wrapper)된 클래스가 아닙니다. ArrayList를 사용하면 객체를 저장하고 검색하며 필요에 따라 크기를 동적으로 조절할 수 있습니다.
예를 들어, 정수를 저장하는 ArrayList를 생성하는 방법은 다음과 같습니다:
import java.util.ArrayList;
public class Example {
public static void main(String[] args) {
// Integer 형식의 객체를 저장하는 ArrayList 생성
ArrayList<Integer> numbers = new ArrayList<>();
// 정수를 추가
numbers.add(1);
numbers.add(2);
numbers.add(3);
// ArrayList에서 값 가져오기
int firstNumber = numbers.get(0);
System.out.println(firstNumber); // 1 출력
}
}
import java.util.ArrayList;
public class Example {
public static void main(String[] args) {
// Integer 형식의 객체를 저장하는 ArrayList 생성
ArrayList<Integer> numbers = new ArrayList<>();
// 정수를 추가
numbers.add(1);
numbers.add(2);
numbers.add(3);
// ArrayList에서 값 가져오기
int firstNumber = numbers.get(0);
System.out.println(firstNumber); // 1 출력
}
}
또한 ArrayList는 다양한 데이터 형식의 객체를 저장할 수 있도록 제네릭스(generics)를 지원합니다. 이것은 ArrayList를 사용할 때 타입 안전성(type-safety)을 제공하며, 원시 데이터 형식 또는 객체 모두를 저장할 수 있게 해줍니다.
ArrayList 클래스는 다양한 메서드를 제공하여 요소의 추가, 삭제, 검색, 정렬 및 다양한 작업을 수행할 수 있도록 합니다. 일반적으로 사용되는 몇 가지 ArrayList의 주요 메서드는 다음과 같습니다:
또한, 정렬, 부분 리스트 추출 및 반복자(Iterator)를 사용한 순회와 같은 다른 작업을 수행하는 메서드도 있습니다. 이러한 메서드를 사용하여 ArrayList를 조작하고 데이터를 관리할 수 있습니다.