V tomto kurzu se na příkladu dozvíme o rozhraní Java NavigableSet a jeho metodách.
NavigableSet
Rozhraní rámce Java sbírek poskytuje funkce pro pohyb mezi nastavenými prvků.
Považuje se to za typ SortedSet.
Třída, která implementuje NavigableSet
Aby bylo možné používat funkce NavigableSet
rozhraní, musíme použít TreeSet
třídu, která implementuje NavigableSet
.
Jak používat NavigableSet?
V Javě musíme java.util.NavigableSet
balíček použít k použití NavigableSet
. Jakmile naimportujeme balíček, můžeme vytvořit navigovatelné sady.
// SortedSet implementation by TreeSet class NavigableSet numbers = new TreeSet();
Zde jsme vytvořili splavnou sadu pojmenovaných čísel TreeSet
třídy.
Metody NavigableSet
The NavigableSet
je považován za typ SortedSet
. Je to proto, že NavigableSet
rozšiřuje SortedSet
rozhraní.
Všechny metody SortedSet jsou tedy k dispozici také v NavigableSet. Chcete-li se dozvědět, jak tyto metody, navštivte Java SortedSet.
Některé z metod SortedSet
( headSet()
, tailSet()
a subSet()
) jsou však v definovány odlišně NavigableSet
.
Podívejme se, jak jsou tyto metody definovány NavigableSet
.
headSet (element, booleanValue)
Tyto headSet()
metoda vrátí všechny prvky splavné sady před zadaného prvku (který je předáno jako argument).
Parametr booleanValue je volitelný. Jeho výchozí hodnota je false
.
Pokud true
je předán jako booleanValue, metoda vrátí všechny prvky před zadaným prvkem včetně zadaného prvku.
tailSet (element, booleanValue)
Tyto tailSet()
metoda vrátí všechny prvky splavné sady po zadaném prvek (který je předán jako argument), včetně zadaného prvku.
Parametr booleanValue je volitelný. Jeho výchozí hodnota je true
.
Pokud false
je předán jako booleanValue, metoda vrátí všechny prvky za zadaným prvkem bez zahrnutí zadaného prvku.
podmnožina (e1, bv1, e2, bv2)
Tyto subSet()
metoda vrátí všechny prvky mezi body E1 a E2, včetně E1.
Bv1 a bv2 jsou volitelné parametry. Výchozí hodnota bv1 je true
a výchozí hodnota bv2 je false
.
Pokud false
je předán jako bv1, metoda vrátí všechny prvky mezi e1 a e2 bez zahrnutí e1
.
Pokud true
je předán jako bv2, metoda vrátí všechny prvky mezi e1 a e2, včetně e1.
Metody navigace
NavigableSet
Poskytuje různé metody, které lze použít k navigaci přes jeho prvků.
- descendingSet () - obrací pořadí prvků v sadě
- descendingIterator () - vrátí iterátor, který lze použít k iteraci sady v opačném pořadí
- strop () - vrací nejnižší prvek mezi těmi prvky, které jsou větší nebo rovny určenému prvku
- floor () - vrací největší prvek mezi těmi prvky, které jsou menší nebo rovny určenému prvku
- higher () - vrací nejnižší prvek mezi těmi prvky, které jsou větší než zadaný prvek
- lower () - vrací největší prvek mezi těmi prvky, které jsou menší než zadaný prvek
- pollFirst () - vrátí a odebere první prvek ze sady
- pollLast () - vrátí a odebere poslední prvek ze sady
Chcete-li se dozvědět více NavigableSet
, navštivte Java NavigableSet (oficiální dokumentace Java).
Implementace NavigableSet ve třídě TreeSet
import java.util.NavigableSet; import java.util.TreeSet; class Main ( public static void main(String() args) ( // Creating NavigableSet using the TreeSet NavigableSet numbers = new TreeSet(); // Insert elements to the set numbers.add(1); numbers.add(2); numbers.add(3); System.out.println("NavigableSet: " + numbers); // Access the first element int firstElement = numbers.first(); System.out.println("First Number: " + firstElement); // Access the last element int lastElement = numbers.last(); System.out.println("Last Element: " + lastElement); // Remove the first element int number1 = numbers.pollFirst(); System.out.println("Removed First Element: " + number1); // Remove the last element int number2 = numbers.pollLast(); System.out.println("Removed Last Element: " + number2); ) )
Výstup
NavigableSet: (1, 2, 3) První prvek: 1 Poslední prvek: 3 Odebrán První prvek: 1 Odebrán poslední prvek: 3
Chcete-li se dozvědět více TreeSet
, navštivte Java TreeSet.
Nyní, když víme o NavigableSet
rozhraní, se dozvíme o jeho implementaci pomocí TreeSet
třídy.