キュー
機能 | メソッド名 | 備考 |
---|---|---|
追加 | add / offer | 容量制限がある場合は offer 推奨 |
取出し | remove / poll | 空のとき 例外を起こす / null を返す |
参照 | element / peek | 空のとき 例外を起こす / null を返す |
SampleQueue.java
import java.util.Queue;
import java.util.ArrayDeque;
public class SampleQueue {
public static void main(String[] args){
Queue<Integer> queue = new ArrayDeque<Integer>();
for (int i=0;i<100;i++) queue.add(i);
while(true){
Integer a = queue.poll();
if (a == null) break;
System.out.print(a + " ");
}
System.out.println("");
}
}
スタック
スタックは java.util.Stack よりも java.util.Deque インタフェースを使ったほうが良いらしい
キューの場合と比べて、追加メソッドが変わっただけで 取出し、参照は変わらない
機能 | メソッド名 | 備考 |
---|---|---|
追加 | push / offerFirst | 容量制限がある場合は offerFirst 推奨 |
取出し | remove / poll | 空のとき 例外を起こす / null を返す |
参照 | element / peek | 空のとき 例外を起こす / null を返す |
SampleDeque.java
import java.util.Deque;
import java.util.ArrayDeque;
public class SampleDeque {
public static void main(String[] args){
Deque<Integer> stack = new ArrayDeque<Integer>();
for (int i=0;i<100;i++) stack.push(i);
while(true){
Integer a = stack.poll();
if (a == null) break;
System.out.print(a + " ");
}
System.out.println("");
}
}