U ovom uputstvu naučit ćemo o sučelju Java NavigableSet i njegovim metodama uz pomoć primjera.
NavigableSet
Sučelje okvira Java Zbirke pruža mogućnosti za kretanje između postavljenih elemenata.
Smatra se vrstom SortedSet.
Klasa koja implementira NavigableSet
Da bismo koristili funkcionalnosti NavigableSet
sučelja, moramo koristiti TreeSet
klasu koja implementira NavigableSet
.
Kako koristiti NavigableSet?
U Javi moramo uvesti java.util.NavigableSet
paket za upotrebu NavigableSet
. Nakon što uvozimo paket, evo kako možemo stvoriti navigacijske skupove.
// SortedSet implementation by TreeSet class NavigableSet numbers = new TreeSet();
Ovdje smo stvorili plovni skup s brojevima TreeSet
razreda.
Metode NavigableSet-a
The NavigableSet
smatra se vrstom SortedSet
. To je zato što NavigableSet
proširuje SortedSet
sučelje.
Dakle, sve metode SortedSet također su dostupne u NavigableSetu. Da biste saznali kako se koriste ove metode, posjetite Java SortedSet.
Međutim, neke od metoda SortedSet
( headSet()
, tailSet()
i subSet()
) drugačije su definirane u NavigableSet
.
Pogledajmo kako su ove metode definirane u NavigableSet
.
headSet (element, booleanValue)
The headSet()
metoda vraća sve elemente plovnog skupa prije određenog elementa (koji je prošao kao argument).
Parametar booleanValue nije obavezan. Njegova je zadana vrijednost false
.
Ako true
se prosljedi kao booleanValue, metoda vraća sve elemente prije navedenog elementa, uključujući navedeni element.
tailSet (element, booleanValue)
The tailSet()
metoda vraća sve elemente plovnog setu nakon određenog elementa (koji je prošao kao argument), uključujući određenog elementa.
Parametar booleanValue nije obavezan. Njegova je zadana vrijednost true
.
Ako false
se preda kao booleanValue, metoda vraća sve elemente nakon navedenog elementa bez uključivanja navedenog elementa.
podskup (e1, bv1, e2, bv2)
The subSet()
metoda vraća sve elemente između E1 i E2, uključujući E1.
Bv1 i bv2 su neobavezni parametri. Zadana vrijednost bv1 je true
, a zadana vrijednost bv2 je false
.
Ako false
se preda kao bv1, metoda vraća sve elemente između e1 i e2 bez uključivanja e1
.
Ako true
se preda kao bv2, metoda vraća sve elemente između e1 i e2, uključujući e1.
Metode za plovidbu
Navodi NavigableSet
različite metode koje se mogu koristiti za navigaciju kroz njegove elemente.
- descendingSet () - obrće redoslijed elemenata u skupu
- descendingIterator () - vraća iterator koji se može koristiti za itiranje preko skupa obrnutim redoslijedom
- plafon () - vraća najniži element među onim elementima koji su veći ili jednaki navedenom elementu
- floor () - vraća najveći element među onim elementima koji su manji ili jednaki navedenom elementu
- higher () - vraća najniži element među onim elementima koji su veći od navedenog elementa
- lower () - vraća najveći element među onim elementima koji su manji od navedenog elementa
- pollFirst () - vraća i uklanja prvi element iz skupa
- pollLast () - vraća i uklanja posljednji element iz skupa
Da biste saznali više o NavigableSet
, posjetite Java NavigableSet (službena Java dokumentacija).
Implementacija NavigableSet-a u klasi 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); ) )
Izlaz
NavigableSet: (1, 2, 3) Prvi element: 1 Zadnji element: 3 Uklonjen Prvi element: 1 Uklonjen zadnji element: 3
Da biste saznali više o tome TreeSet
, posjetite Java TreeSet.
Sad kad znamo za NavigableSet
sučelje, naučit ćemo o njegovoj implementaciji pomoću TreeSet
klase.