https://soft.plusblog.co.kr/24
import java.util.Deque
Deque<객체 타입> deque1 = new ArrayDeque<>(); Deque<객체 타입> deque2 = new LinkedBlockingDeque<>(); Deque<객체 타입> deque3 = new ConcurrentLinkedDeque<>(); Deque<객체 타입> deque4 = new LinkedList<>();
deque.addFirst() : Deque 앞에 값 삽입, 용량 초과시 Exception
deque.offerFirst() : Deque 앞에 값 삽입 후 true, 용량 초과시 false
deque.addLast() : Deque 뒤쪽에 값 삽입, 용량 초과시 Exception
deque.add() : addLast()와 동일
deque.offerLast() : Deque 뒤쪽에 값 삽입 후 true, 용량 초과시 false
deque.offer() : offerLast()와 동일
deque.push() : addFirst()와 동일
deque.pop() : removeFirst()와 동일
제거 후 데이터 반환
deque.removeFirst(): Deque 앞에서 제거 후 값 반환, 비어 있으면 Exception
deque.remove() : removeFirst()와 동일
deque.poll(): Deque 앞에서 제거 후 값 반환, 비어 있으면 null
deque.pollFirst(): poll()과 동일
deque.removeLast(): Deque 뒤에서 제거 후 값 반환, 비어 있으면 Exception
deque.pollLast(): Deque 뒤에서 제거 후 값 반환, 비어 있으면 null
데이터 찾아서 제거
deque.removeFirstOccurrence(Object o);
deque.removeLastOccurrence(Object o);
deque.remove(Object o);
deque.getFirst() : 첫번째 값 확인, 비어있으면 Exception
deque.peekFirst(): 첫번째 값 확인, 비어있으면 null
deque.peek(): peekFirst()와 동일
deque.getLast(): 마지막 값 확인, 비어있으면 Exception
deque.peekLast(): 마지막 값 확인, 비어있으면 null
deque.contain(Object o): Deque내 값 존재 확인 true/false
deque.size() : Deque 크기 반환
// Iterator 사용 Iterator<Integer> it = Deque.iterator(); while(it.hasNext()){ System.out.println(it.next()); } Deque.iterator().forEachRemaining(System.out:pritnln);
https://www.techiedelight.com/ko/iterate-over-deque-java-forward-backward/