Java : SequencedCollection - API使用例
SequencedCollection (Java SE 21 & JDK 21) の使用例まとめです。
だいたいのメソッドを網羅済みです。
API仕様書のおともにどうぞ。
概要
SequencedCollection は順序を持ち、かつ、逆転可能な Collection です。
final SequencedCollection<String> sc = new ArrayList<>();
sc.addLast("a");
sc.addLast("b");
sc.addLast("c");
System.out.println(sc); // [a, b, c]
System.out.println(sc.reversed()); // [c, b, a]
sc.addFirst("X");
sc.addFirst("Y");
sc.addFirst("Z");
System.out.println(sc); // [Z, Y, X, a, b, c]
System.out.println(sc.reversed()); // [c, b, a, X, Y, Z]
メソッド
default void addFirst (E e)
final SequencedCollection<String> sc = new ArrayList<>();
sc.addFirst("aaa");
System.out.println(sc); // [aaa]
sc.addFirst("bbb");
System.out.println(sc); // [bbb, aaa]
sc.addFirst("ccc");
System.out.println(sc); // [ccc, bbb, aaa]
default void addLast (E e)
final SequencedCollection<String> sc = new ArrayList<>();
sc.addLast("aaa");
System.out.println(sc); // [aaa]
sc.addLast("bbb");
System.out.println(sc); // [aaa, bbb]
sc.addLast("ccc");
System.out.println(sc); // [aaa, bbb, ccc]
default E getFirst ()
final SequencedCollection<String> sc = new ArrayList<>();
sc.addLast("aaa");
System.out.println(sc); // [aaa]
System.out.println(sc.getFirst()); // aaa
sc.addLast("bbb");
System.out.println(sc); // [aaa, bbb]
System.out.println(sc.getFirst()); // aaa
sc.addLast("ccc");
System.out.println(sc); // [aaa, bbb, ccc]
System.out.println(sc.getFirst()); // aaa
final SequencedCollection<String> sc = new ArrayList<>();
System.out.println(sc); // []
try {
final var ret = sc.getFirst();
} catch (NoSuchElementException e) {
System.out.println("NoSuchElementException!");
}
// 結果
// ↓
//NoSuchElementException!
default E getLast ()
final SequencedCollection<String> sc = new ArrayList<>();
sc.addLast("aaa");
System.out.println(sc); // [aaa]
System.out.println(sc.getLast()); // aaa
sc.addLast("bbb");
System.out.println(sc); // [aaa, bbb]
System.out.println(sc.getLast()); // bbb
sc.addLast("ccc");
System.out.println(sc); // [aaa, bbb, ccc]
System.out.println(sc.getLast()); // ccc
final SequencedCollection<String> sc = new ArrayList<>();
System.out.println(sc); // []
try {
final var ret = sc.getLast();
} catch (NoSuchElementException e) {
System.out.println("NoSuchElementException!");
}
// 結果
// ↓
//NoSuchElementException!
default E removeFirst ()
final SequencedCollection<String> sc = new ArrayList<>();
sc.addLast("aaa");
sc.addLast("bbb");
sc.addLast("ccc");
System.out.println(sc); // [aaa, bbb, ccc]
System.out.println(sc.removeFirst()); // aaa
System.out.println(sc); // [bbb, ccc]
System.out.println(sc.removeFirst()); // bbb
System.out.println(sc); // [ccc]
System.out.println(sc.removeFirst()); // ccc
System.out.println(sc); // []
final SequencedCollection<String> sc = new ArrayList<>();
System.out.println(sc); // []
try {
final var ret = sc.removeFirst();
} catch (NoSuchElementException e) {
System.out.println("NoSuchElementException!");
}
// 結果
// ↓
//NoSuchElementException!
default E removeLast ()
final SequencedCollection<String> sc = new ArrayList<>();
sc.addLast("aaa");
sc.addLast("bbb");
sc.addLast("ccc");
System.out.println(sc); // [aaa, bbb, ccc]
System.out.println(sc.removeLast()); // ccc
System.out.println(sc); // [aaa, bbb]
System.out.println(sc.removeLast()); // bbb
System.out.println(sc); // [aaa]
System.out.println(sc.removeLast()); // aaa
System.out.println(sc); // []
final SequencedCollection<String> sc = new ArrayList<>();
System.out.println(sc); // []
try {
final var ret = sc.removeLast();
} catch (NoSuchElementException e) {
System.out.println("NoSuchElementException!");
}
// 結果
// ↓
//NoSuchElementException!
SequencedCollection<E> reversed ()
final SequencedCollection<String> sc = new ArrayList<>();
sc.addLast("aaa");
sc.addLast("bbb");
sc.addLast("ccc");
System.out.println(sc); // [aaa, bbb, ccc]
final var reversedSc = sc.reversed();
System.out.println(reversedSc); // [ccc, bbb, aaa]
System.out.println(reversedSc.reversed()); // [aaa, bbb, ccc]
Collectionで宣言されたメソッド
add, addAll, clear, contains, containsAll, equals, hashCode, isEmpty, iterator, parallelStream, remove, removeAll, removeIf, retainAll, size, spliterator, stream, toArray, toArray, toArray
「Java API 使用例 : Collection」をご参照ください。
Iterableで宣言されたメソッド
forEach
「Java API 使用例 : Iterable」をご参照ください。
関連記事
- API 使用例
- Collection (コレクション)
- Collections (コレクション操作)
- Comparable
- Comparator
- Iterator
- List (リスト)
- Map (マップ)
- Map.Entry (キーと値のペア)
- Queue (キュー)
- AbstractQueue
- ArrayBlockingQueue (ブロッキング・配列キュー)
- ArrayDeque (両端キュー)
- BlockingDeque (ブロッキング・両端キュー)
- BlockingQueue (ブロッキング・キュー)
- ConcurrentLinkedDeque (並列処理用・両端キュー)
- ConcurrentLinkedQueue (並列処理用キュー)
- Deque (両端キュー)
- LinkedBlockingDeque (ブロッキング・リンク両端キュー)
- LinkedBlockingQueue (ブロッキング・リンクキュー)
- LinkedList (二重リンク・リスト)
- PriorityBlockingQueue (ブロッキング・優先度付きキュー)
- PriorityQueue (優先度付きキュー)
- RandomAccess
- Set (セット)
- Spliterator