ArrayList
ArrayList 는 java에서 제공하는 List 인터페이스를 구현한 구체적인 클래스로, 동적 배열을 구현한 자료구조.
특징
-크기가 가변적으로 요소가 추가되거나 제거될 때 자동으로 크기가 조정됨. java의 배열보다는 javascript의 배열에 가까운 느낌이다.
-인덱스 기반, 순차적(Iterator, for-each 루프) 접근이 모두 가능하다.
-동일한 요소 저장이 가능하다.
List<>
java 컬렉션 프레임워크에서 제공하는 특정 구현체가 아니라 인터페이스로 순서가 있는 컬렉션을 나타냄.
특징
-실제로는 ArrayList나 LinkedList 등의 구체적인 클래스로 구현됨
-다형성을 가져 List 인터페이스를 사용하면 나중에 ArrayList 대신 LinkedList로 쉽게 변경 가능함.
-제네릭 타입을 가져 다이아몬드(<>) 안쪽의 타입을 가진 객체만 저장할 수 있음.
사용처
특정 구현체를 명시적으로 사용해야 할 때(ex - 성능 최적화) = ArrayList
다형성을 활용하여 유연한 코드를 작성할 때 =List<>
'Java' 카테고리의 다른 글
Stream API (1) | 2025.01.25 |
---|---|
제네릭의 정의와 설명 (1) | 2025.01.05 |