Interfejs Java NavigableSet

W tym samouczku dowiemy się o interfejsie Java NavigableSet i jego metodach na przykładzie.

NavigableSetInterfejs ramach kolekcje Java zapewnia funkcje, aby poruszać się wśród ustawionych elementów.

Jest uważany za typ SortedSet.

Klasa implementująca NavigableSet

Aby skorzystać z funkcjonalności NavigableSetinterfejsu, musimy skorzystać z TreeSetklasy, która implementuje NavigableSet.

Jak korzystać z NavigableSet?

W Javie musimy zaimportować java.util.NavigableSetpakiet do użycia NavigableSet. Po zaimportowaniu pakietu, oto jak możemy tworzyć zestawy nawigacyjne.

 // SortedSet implementation by TreeSet class NavigableSet numbers = new TreeSet(); 

Tutaj stworzyliśmy zbiór nazwanych numerów TreeSetklasy , po którym można nawigować .

Metody NavigableSet

NavigableSetJest uważane za rodzaj SortedSet. To dlatego, że NavigableSetrozszerza SortedSetinterfejs.

W związku z tym wszystkie metody SortedSet są również dostępne w NavigableSet. Aby dowiedzieć się, jak te metody, odwiedź Java SortedSet.

Jednakże, niektóre z tych metod SortedSet( headSet(), tailSet()i subSet()) są zdefiniowane w różny sposób NavigableSet.

Zobaczmy, jak te metody są zdefiniowane w NavigableSet.

headSet (element, booleanValue)

Te headSet()metody zwraca wszystkie elementy zestawu żeglowną przed określonego elementu (która jest przekazywana jako argumentu).

Parametr booleanValue jest opcjonalny. Jego domyślną wartością jest false.

Jeśli truejest przenoszona jako booleanValue, metoda zwraca wszystkie elementy przed określonym elementem, w tym określony element.

tailSet (element, booleanValue)

Te tailSet()metody zwraca wszystkie elementy żeglowną zbioru po upływie określonego elementu (która jest przekazywana jako argument) wraz z określonym elementem.

Parametr booleanValue jest opcjonalny. Jego domyślną wartością jest true.

Jeśli falsejest przenoszona jako booleanValue, metoda zwraca wszystkie elementy po określonym elemencie bez uwzględniania określonego elementu.

podzbiór (e1, bv1, e2, bv2)

Te subSet()metody powraca wszystkie pozycje pomiędzy E1 i E2, łącznie z E1.

Parametry bv1 i bv2 to parametry opcjonalne. Domyślna wartość bv1 to true, a domyślna wartość bv2 to false.

Jeśli falsejest przekazywana jako bv1, metoda zwraca wszystkie elementy między e1 i e2 bez uwzględniania e1.

Jeśli truezostanie przekazana jako bv2, metoda zwraca wszystkie elementy między e1 i e2, w tym e1.

Metody nawigacji

NavigableSetDostarcza różnych metod, które mogą być wykorzystywane do poruszania się w stosunku do jego elementów.

  • descendingSet () - odwraca kolejność elementów w zestawie
  • descendingIterator () - zwraca iterator, którego można użyć do iteracji zestawu w odwrotnej kolejności
  • sufit () - zwraca najniższy element spośród tych elementów, które są większe lub równe podanemu elementowi
  • floor () - zwraca największy element spośród tych elementów, które są mniejsze lub równe podanemu elementowi
  • wyższy () - zwraca najniższy element spośród tych elementów, które są większe niż określony element
  • lower () - zwraca największy element spośród tych elementów, które są mniejsze niż określony element
  • pollFirst () - zwraca i usuwa pierwszy element z zestawu
  • pollLast () - zwraca i usuwa ostatni element z zestawu

Aby dowiedzieć się więcej na temat NavigableSet, odwiedź Java NavigableSet (oficjalna dokumentacja Java).

Implementacja NavigableSet w klasie 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); ) ) 

Wynik

 Zestaw Navigable: (1, 2, 3) Pierwszy element: 1 Ostatni element: 3 Usunięty Pierwszy element: 1 Usunięty Ostatni element: 3 

Aby dowiedzieć się więcej TreeSet, odwiedź Java TreeSet.

Teraz, gdy wiemy już o NavigableSetinterfejsie, dowiemy się o jego implementacji za pomocą TreeSetklasy.

Interesujące artykuły...