리스트는 요소의 순서를 인덱스로 관리하므로 요소들이 중복될 수 있는 컬렉션을 말하며 이를 위해 List 인터페이스를 구현하고 있다.
리스트의 특징
1. 요소(element)의 순소를 인덱스로 관리한다
2. 요소(element)는 중복될 수 있다.
리스트 구현 클래스
List인터페이스를 구현하는 클래스에는 ArrayList, Vector, LinkedList가 있다.
List
ArrayList |
Vector |
LinkedList |
ο 빠른 반복 ο 빠른 무작위 접근 ο 요소에 null 허용 |
ο ArrayList의 동기화된 버전 ο 동기화 메소드 보유 ο ArrayList보다 느린 속도 ο 요소에 null 허용 |
ο 끝에 요소 추가 용이 ο Queue 인터페이스 구현 ο 요소에 null 허용 |
리스트 인터페이스 메소드
boolean |
add(object o) 지정된 요소를 리스트 끝에 추가한다. |
void |
add(int index, Object o) 지정된 요소를 리스트의 지정된 위치에 추가한다. |
void |
clear() 리스트의 모든 요소들을 제거한다. |
boolean |
contains(Object o) 리스트가 지정된 요소를 포함하고 있다면 true를 반환한다. |
boolean |
equals(Object o) 지정된 객체가 리스트와 동일한지 비교한다. |
boolean |
isEmpty() 리스트가 요소를 하나도 포함하고 있지 않다면 true를 반환한다. |
boolean |
remove(int index) 리스트에서 지정된 위치의 요소를 제거한다. |
boolean |
remove(Object o) 리스트에서 가장 먼저 발견된 지정된 요소를 제거한다. |
int |
size() 리스트의 크기를 반환한다. |
Object[] |
toArray() 리스트에 포함된 모든 요소를 배열로 반환한다. |
ArrayList클래스 예제
import java.util.ArrayList;
public class Test{
public static void main(String args[]) {
ArrayList<String> list = new ArrayList<String>();
list.add("a");
list.add("b");
list.add("c");
for (int i= 0; i < list.size(); i++){
System.out.println(list.get(i));
}
}
}
LinkedList 클래스
import java.util.LinkedList;
public class Test{
public static void main(String args[]){
LinkedList<String> list = new LinkedList<String>();
list.addFirst("one");
list.addFirst("two");
list.addFirst("three");
list.addFirst("four");
list.addFirst("five");
System.out.println(list);
list.removeLast();
list.removeLast();
list.removeLast();
System.out.println(list);
}
}
'기타 > 프로그래밍 분류' 카테고리의 다른 글
JAVA - 컬렉션_맵(MAP) (0) | 2013.10.15 |
---|---|
JAVA - 컬렉션_큐(Queue) (0) | 2013.10.15 |
JAVA - 컬렉션_집합(set) (0) | 2013.10.15 |
JAVA - 패턴 매칭(Pattern Matching) (0) | 2013.10.13 |
XML (0) | 2011.11.26 |