4.7. 順序付けられたコレクション
Red Hat build of OpenJDK 21 では、順序付けられたコレクションを表すための新しいインターフェイスを追加するシーケンスコレクション機能が導入されています。各コレクションには、検出順序が明確に定義されたさまざまな要素があります。この機能は、順序付けられた各コレクションが最初の要素、最後の要素、およびその他の特定の要素にアクセスする方法を統一します。
SequencedCollection インターフェイス
SequencedCollection インターフェイスは、コレクション内の最初の要素と最後の要素を追加、取得、または削除するためのメソッドと、コレクションの逆順のビューを取得するためのメソッドを提供します。
interface SequencedCollection<E> extends Collection<E> {
// new method
SequencedCollection<E> reversed();
// methods promoted from Deque
void addFirst(E);
void addLast(E);
E getFirst();
E getLast();
E removeFirst();
E removeLast();
}
SequencedCollection インターフェイスは、SortedSet、NavigableSet、LInkedHashSet、List、および Deque インターフェイスで実装されます。
SequencedMap インターフェイス
SequencedMap インターフェイスは、コレクションの両端のエントリーを取得または削除するためのメソッドを提供します。
interface SequencedMap<K,V> extends Map<K,V> {
// new methods
SequencedMap<K,V> reversed();
SequencedSet<K> sequencedKeySet();
SequencedCollection<V> sequencedValues();
SequencedSet<Entry<K,V>> sequencedEntrySet();
V putFirst(K, V);
V putLast(K, V);
// methods promoted from NavigableMap
Entry<K, V> firstEntry();
Entry<K, V> lastEntry();
Entry<K, V> pollFirstEntry();
Entry<K, V> pollLastEntry();
}
SequencedMap インターフェイスは、SortedMap、NavigableMap、および LInkedHashMap インターフェイスによって実装されます。
詳細は、JEP 431: Sequenced Collections を参照してください。