
Queue
와 구현체의 class diagramQueue 인터페이스
package java.util public interface Queue<E> extends Collection<E> { boolean add(E e); boolean offer(E e); E remove(); E poll(); E element(); E peek(); }
Insert :add(e) offer(e) Remove : remove(), poll() Examine : element(), peek()
add
: queue가 꽉 차있을 경우 예외를 던짐, offer
: 그냥 false를 return함remove
: queue가 비어있을 경우 예외를 던짐, poll
: 그냥 null을 return함element
: queue가 비어있을 경우 예외를 던짐, peek
: 그냥 null을 return함LinkedList vs PriorityQueue
그냥 큐 vs 우선순위 큐
PriorityQueue는 null을 element로 가질 수 없음 (compare를 할 수 없기 때문에 제한)
PriorityQueue는 Generic Type E 가 Comparable을 구현 하였거나 생성자에 Comparator를 전달 받아야함