ArrayList 클래스는 Java 컬렉션 프레임워크 일부로 List 인터페이스 구현, 가변 배열 데이터 구조 제공. 정적 배열과 달리 요소 추가/제거 시 ArrayList 자동 용량 조절, 동적 배열 만듦.
ArrayList vs 배열
전통적 배열 선언 시 고정 크기 필요, 유연성 제한. ArrayList 이 제한 극복, 필요 시 리사이징으로 효율적 동적 데이터 처리 가능.
ArrayList 생성
사용 전 클래스 임포트:
import java.util.ArrayList;
원하는 요소 타입으로 인스턴스화:
// Integer 타입 ArrayList ArrayList<Integer> intList = new ArrayList<>(); // String 타입 ArrayList ArrayList<String> strList = new ArrayList<>();
참고: 제네릭이 원시 타입 미지원이므로 래퍼 클래스 사용(예: int용 Integer).
예제: ArrayList 생성
import java.util.ArrayList; class Main { public static void main(String[] args){ ArrayList<String> languages = new ArrayList<>(); languages.add("Java"); languages.add("Python"); languages.add("Swift"); System.out.println("ArrayList: " + languages); } }
출력
ArrayList: [Java, Python, Swift]
ArrayList 기본 연산
핵심 연산: 요소 추가, 접근, 수정, 제거. 각 간결 코드 스니펫.
요소 추가
요소 접근
요소 변경
요소 제거
1. 요소 추가
단일 요소 추가:
ArrayList<String> languages = new ArrayList<>(); languages.add("Java"); languages.add("C"); languages.add("Python"); System.out.println("ArrayList: " + languages);