List 인터페이스를 구현한 Vector를 상속받은 클래스이다.
empty, peek, pop, push, search가 있다. Vector로부터 이 5개 메서드만 상속받는다.
메서드 | 설명 |
---|---|
boolean empty() | 스택이 비어 있으면 true 반환 |
E peek() | 제일 마지막으로 저장된 객체를 반환 |
E pop() | 제일 마지막으로 저장된 객체를 스택에서 제거하고, 해당 객체를 반환 |
E push(E item) | 해당 객체를 스택에 삽입 |
int search(Object o) | 해당 스택에서 전달된 객체가 존재하는 index를 반환 제일 마지막에 저장된 객체부터 0에서 시작함. |
Deque인터페이스를 구현한 클래스로, 더 복잡하고 빠른 스택을 구현할 때 사용하면 된다.
Deque<Integer> st = new ArrayDeque<Integer>();
Stack과는 달리 Queue는 인터페이스이다.
하위 인터페이스로는 Deque, BlockingDeque, BlockingQueue, TransferQueue가 있다.
Deque를 구현한 LinkedList와 같이 여러 클래스가 Queue를 직간접적으로 구현하였다.
Queue를 표현하기 위하여, Collection 인터페이스의 메서드만을 상속받는다.
메서드 | 설명 |
---|---|
boolean add(E e) | 해당 객체를 큐에 삽입 성공하면 true반환, 큐에 여유 공간이 없어 실패하면 IllegalStateException 발생 |
boolean offer(E e) | 큐에 해당 객체를 삽입 |
E peek() | 제일 먼저 저장된 객체를 반환 큐가 비어 있으면 null 반환 |
E poll() | 제일 먼저 저장된 객체를 큐에서 제거하고, 해당 객체를 반환 큐가 비어 있다면 null 반환 |
더 복잡하고 빠른 Queue를 구현하기 위해 사용한다.
Deque<Integer> qu = new ArrayDeque<Integer>();
http://tcpschool.com/java/java_collectionFramework_stackQueue