Tbpgr Blog

Employee Experience Engineer tbpgr(てぃーびー) のブログ

書籍 パーフェクトJava | デック(deque・double ended queue)

パンくず

書籍 パーフェクトJava
デック

概要

Javaのデックについて

JavaのDeque

両端キュー。
先頭、末尾への要素追加や削除をサポートする。

サンプルコード

package perfect.deq;

import java.util.ArrayDeque;
import java.util.Deque;
import java.util.HashSet;
import java.util.Set;

public class DeqSample {
  public static void main(String[] args) {
    Deque<String> deq = new ArrayDeque<String>();
    // addLastと同じ
    deq.add("はげ");// イメージ:|はげ|
    deq.addFirst("ひげ");// イメージ:→|ひげ|はげ|
    deq.addLast("ほげ");// イメージ:|ひげ|はげ|ほげ|←

    int i = 1;
    System.out.print("|");
    for (String eachDeq : deq) {
      System.out.print(eachDeq + "|");
      i++;
    }
    System.out.println("");

    // 先頭要素の取得
    System.out.println("getFirst:" + deq.getFirst());
    // 末端要素の取得
    System.out.println("getLast:" + deq.getLast());
  }
}

出力

|ひげ|はげ|ほげ|
getFirst:ひげ
getLast:ほげ
|ひげ|はげ|ほげ|ひげ|