W tej lekcji omawiamy uporządkowane i nawigowalne kolekcje Javy:
NavigableSet i
NavigableMap. W praktyce zobaczymy, jak pracować z zakresami za pomocą
subSet/
headSet/
tailSet, wyszukiwać „najbliższe” elementy przy użyciu
lower,
floor,
ceiling,
higher oraz zarządzać skrajnymi elementami poprzez
pollFirst/
pollLast. Omówimy odwrócone widoki
descendingSet/
descendingMap, „żywe” view i typowe przypadki użycia (harmonogramy, priorytety, skale). Jako implementacje użyjemy
TreeSet i
TreeMap.