Interface Java NavigableSet

Neste tutorial, aprenderemos sobre a interface Java NavigableSet e seus métodos com a ajuda de um exemplo.

A NavigableSetinterface da estrutura Java Collections fornece os recursos para navegar entre os elementos do conjunto.

É considerado um tipo de SortedSet.

Classe que implementa NavigableSet

Para usar as funcionalidades da NavigableSetinterface, precisamos usar a TreeSetclasse que implementa NavigableSet.

Como usar o NavigableSet?

Em Java, devemos importar o java.util.NavigableSetpacote a ser usado NavigableSet. Depois de importar o pacote, veja como podemos criar conjuntos navegáveis.

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

Aqui, criamos um conjunto navegável denominado números da TreeSetclasse.

Métodos de NavigableSet

O NavigableSeté considerado um tipo de SortedSet. É porque NavigableSetestende a SortedSetinterface.

Portanto, todos os métodos SortedSet também estão disponíveis em NavigableSet. Para saber como esses métodos, visite Java SortedSet.

No entanto, alguns dos métodos de SortedSet( headSet(), tailSet()e subSet()) são definidos de forma diferente em NavigableSet.

Vamos ver como esses métodos são definidos em NavigableSet.

headSet (element, booleanValue)

O headSet()método retorna todos os elementos de um conjunto navegável antes do elemento especificado (que é passado como um argumento).

O parâmetro booleanValue é opcional. Seu valor padrão é false.

Se truefor passado como um booleanValue, o método retorna todos os elementos antes do elemento especificado, incluindo o elemento especificado.

tailSet (element, booleanValue)

O tailSet()método retorna todos os elementos de um conjunto navegável após o elemento especificado (que é passado como um argumento) incluindo o elemento especificado.

O parâmetro booleanValue é opcional. Seu valor padrão é true.

Se falsefor passado como um booleanValue, o método retornará todos os elementos após o elemento especificado sem incluir o elemento especificado.

subconjunto (e1, bv1, e2, bv2)

O subSet()método retorna todos os elementos entre e1 e e2 incluindo e1.

O bv1 e bv2 são parâmetros opcionais. O valor padrão de bv1 é truee o valor padrão de bv2 é false.

Se falsefor passado como bv1, o método retorna todos os elementos entre e1 e e2 sem incluir e1.

Se truefor passado como bv2, o método retorna todos os elementos entre e1 e e2, incluindo e1.

Métodos de navegação

O NavigableSetfornece vários métodos que podem ser usados ​​para navegar por seus elementos.

  • descendingSet () - inverte a ordem dos elementos em um conjunto
  • descendingIterator () - retorna um iterador que pode ser usado para iterar sobre um conjunto na ordem inversa
  • teto () - retorna o elemento mais baixo entre os elementos que são maiores ou iguais ao elemento especificado
  • floor () - retorna o maior elemento entre os elementos que são menores ou iguais ao elemento especificado
  • superior () - retorna o elemento mais baixo entre os elementos que são maiores do que o elemento especificado
  • lower () - retorna o maior elemento entre os elementos que são menores do que o elemento especificado
  • pollFirst () - retorna e remove o primeiro elemento do conjunto
  • pollLast () - retorna e remove o último elemento do conjunto

Para saber mais sobre o NavigableSet, visite Java NavigableSet (documentação oficial do Java).

Implementação de NavigableSet na classe 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); ) ) 

Resultado

 NavigableSet: (1, 2, 3) Primeiro elemento: 1 Último elemento: 3 Primeiro elemento removido: 1 Último elemento removido: 3 

Para saber mais sobre TreeSet, visite Java TreeSet.

Agora que sabemos sobre a NavigableSetinterface, aprenderemos sobre sua implementação usando a TreeSetclasse.

Artigos interessantes...