sequenced: JEP 431 Sequenced Collections across List/Deque/LinkedHashSet/LinkedHashMap/TreeMap, and the getLast() replacement for the Set find-last stream tricks
This commit is contained in:
@@ -0,0 +1,28 @@
|
||||
=== List (ArrayList implements SequencedCollection) ===
|
||||
getFirst() = alpha
|
||||
getLast() = gamma
|
||||
after addLast("delta"): [alpha, beta, gamma, delta]
|
||||
reversed() = [delta, gamma, beta, alpha]
|
||||
|
||||
=== Deque (ArrayDeque implements SequencedCollection) ===
|
||||
getFirst() = 1
|
||||
getLast() = 3
|
||||
reversed() = [3, 2, 1]
|
||||
|
||||
=== LinkedHashSet implements SequencedSet (insertion order preserved) ===
|
||||
getFirst() = red
|
||||
getLast() = blue
|
||||
reversed() = [blue, green, red]
|
||||
|
||||
=== LinkedHashMap implements SequencedMap (insertion order) ===
|
||||
firstEntry() = jan=1
|
||||
lastEntry() = mar=3
|
||||
after putFirst("dec", 12): {dec=12, jan=1, feb=2, mar=3}
|
||||
sequencedKeySet() = [dec, jan, feb, mar]
|
||||
reversed() = {mar=3, feb=2, jan=1, dec=12}
|
||||
|
||||
=== TreeMap implements SequencedMap too (order = comparator order, not insertion) ===
|
||||
tree contents (natural order) = {1=one, 2=two, 3=three}
|
||||
firstEntry() = 1=one
|
||||
lastEntry() = 3=three
|
||||
reversed() = {3=three, 2=two, 1=one}
|
||||
Reference in New Issue
Block a user