🌱List 컬렉션이란?
✔ 객체 추가
메소드 | 설명 |
---|---|
boolean add(E e) | 주어진 객체를 맨 끝에 추가 |
void add(int index, E element) | 주어진 인덱스에 객체를 추가 |
set(int index, E element) | 주어진 인덱스에 저장된 객체를 주어진 객체로 바꿈 |
✔ 객체 검색
메소드 | 설명 |
---|---|
boolean contains(Object o) | 주어진 객체가 저장되어 있는지 여부 |
E get(int index) | 주어진 인덱스에 저장된 객체를 리턴 |
isEmpty() | 컬렉션이 비어있는지 조사 |
int size() | 저장되어 있는 전체 객체 수를 리턴 |
✔ 객체 삭제
메소드 | 설명 |
---|---|
void clear() | 저장된 모든 객체를 삭제 |
E remove(int index) | 주어진 인덱스에 저장된 객체를 삭제 |
boolean remove(Object o) | 주어진 객체를 삭제 |
위의 표에서 메소드의 매개 변수 타입과 리턴 타입에는 E라는 타입 파라미터가 있는데, 이것은 List 인터페이스가 제네렉 타입이기 때문. 구체적인 타입은 구현 객체를 생성할 때 결정
다음은 예시.
List<String> list = "";
list.add("sunny"); // 맨끝에 객체 추가
list.add(1, "flower"); // 지정된 인덱스에 객체 삽입
String str = list.get(1); // 인덱스로 객체 찾기
list.remove(0); // 인덱스로 객체 삭제
list.remove("flower"); // 객체 삭제
🌱ArrayList
✔ ArrayList의 생성 방법
저장할 객체 타입을 타입 파라미터로 표기하고 기본 생성자를 호출함
List<String> list = new ArrayList<String>();
✔ ArrayList의 생성시 초기 용량 크기 정하기
기본 생성자로 ArrayList 객체를 생성하면 내부에 10개의 객체를 저장할 수 있는 초기 용량을 가짐. 저장되는 객체 수가 늘어나면 용량이 자동으로 증가하지만, 처음부터 용량을 크게 잡고 싶다면 용량의 크기를 매개값으로 받는 생성자를 이용하면 됨
// String 객체 30개를 저장할 수 있는 용량을 가짐
List<String> list = new ArrayList<String>(30);
✔ 고정된 객체들로 구성된 ArrayList의 생성
List<T> list = Arrays.asList("sunny", "flower");
✔ ArrayList의 특징
// 자바 4 이전
List list = new ArrayList(); // 컬렉션 생성
list.add("sunny"); // 객체 추가
Object obj = list.get(0); // 객체 검색
String name = (String) obj; // 타입 변환 후 홍길동을 얻을 수 있음
// 자바 5 이후
List<String> list = new ArrayList<String>();
list.add("sunny"); // 객체 추가
String name = list.get(0); // 컬렉션에서 객체 검색하여 바로 얻음