컬렉션 프레임워크 (Collection Framework) - 2. List

CJI0524·2024년 7월 10일

Java/Collection Framework

목록 보기
2/26

1. List 인터페이스에 정의된 메서드 목록

List 인터페이스는 본 그림에서와 같이 Collection을 상속받으며, 중복을 허용하면서 저장순서가 유지되는 컬렉션을 구현하는데 사용된다.

반환타입이 boolean인 메서드들은 작업에 성공하거나 사실이면 true, 아니면 false를 반환한다.

1.1. 삽입 / 탐색 / 삭제 메서드

삽입

메서드기능
boolean add(Object o)
boolean addAll(Collection c)
지정된 객체(o) 또는 Collection(c)의 객체들을 List에 추가.
void add(int index, Object element)
boolean addAll(int index, Collection c)
지정된 위치(index)에 객체(element) 또는 컬렉션(c)에 포함된 객체들을 추가

탐색

메서드기능
boolean contains(Object o)
boolean containsAll(Collection c)
지정된 객체(o) 또는 Collection(c)의 객체들이 포함되어 있는지 확인.
int indexOf(Object o)지정된 객체의 위치(index)를 반환
(List의 첫 번째 요소부터 순방향으로 탐색)
int lastIndexOf(Object o)지정된 객체의 위치(index)를 반환
(List의 마지막 요소부터 역방향으로 탐색)

삭제

메서드기능
boolean remove(Object o)
boolean removeAll(Collection c)
지정된 객체(o) 또는 Collection(c)의 객체들을 삭제.
Object remove(int index)지정된 위치(index)에 있는 객체를 삭제하고 삭제한 객체를 반환
boolean retainAll(Collection c)지정된 Collection에 포함된 객체만을 남기고, 다른 객체들은 List에서 삭제
집합의 교집합 개념과 유사함.
void clear()List의 모든 객체를 삭제

Get / Set

메서드기능
Object get(int index)지정된 위치(index)에 있는 객체를 반환
Object set(int dex, Object element)지정된 위치(index)에 있는 객체를 element로 변경

1.2. 추가 핵심 기능

Object 메서드

메서드기능
boolean equals(Object o)동일한 List인지 확인
int hashCode()List의 해시 코드를 반환

컬렉션에 저장된 요소 접근

메서드기능
Iterator iterator()해당 List의 iterator를 얻어서 반환
ListIterator listIterator()
ListIterator listIterator(int index)
해당 List의 객체에 접근할 수 있는 ListIterator를 얻어서 반환

컬렉션 상태 체크 / 변경

메서드기능
boolean isEmpty()List가 비어있는지 확인
int size()List에 저장된 객체의 개수를 반환
void sort(Comparator c)지정된 비교자(comparator)로 List를 정렬

1.3. 기타

메서드기능
Object[] toArray()List에 저장된 객체를 객체배열(Object[])로 반환
Object[] toArray(Object[] a)지정된 배열에 List의 객체를 저장해서 반환
List subList(int fromIndex, int toIndex)지정된 범위(fromIndex부터 toIndex)에 있는 객체를 반환

이러한 기능을 가진 List 인터페이스를 ArrayList / Vector 클래스가 구현한다.

2. 해당 게시글 작성에 참고한 글 목록

자바의 정석 3판 (저자 : 남궁성)
Java Collections Framework Video Tutorial
오라클 Java 문서

profile
개발돌이

0개의 댓글