English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Java Base Tutorial

contrôle de flux Java

Java tableau

Java orienté objet (I)

Java orienté objet (II)

Java Programmation orientée objet (III)

Java Exception Handling

Java Liste (List)

Java Queue (File d'attente)

Java Map

Java Set

Java Entrée/Sortie (I/O)

Java Reader/Writer

Autres sujets Java

Interface Java NavigableSet

Dans ce tutoriel, nous allons apprendre l'interface Java NavigableSet et ses méthodes à travers un exemple.

L'interface NavigableSet du cadre Java Collections fournit des fonctionnalités de navigation entre les éléments d'un ensemble.

Il est considéré commeUne version de SortedSet.

Classes qui implémentent NavigableSet

Pour utiliser les fonctionnalités de l'interface NavigableSet, nous devons utiliser la classe qui implémente NavigableSet, à savoir TreeSet.

Comment utiliser NavigableSet ?

Pour utiliser les fonctionnalités de l'interface NavigableSet, nous devons utiliser la classe TreeSet qui implémente NavigableSet.

// Implémentation de SortedSet par la classe TreeSet
NavigableSet<String> numbers = new TreeSet<>();

Ici, nous avons créé un ensemble navigable nommé numbers de la classe TreeSet.

Méthodes de NavigableSet

NavigableSet est considéré comme une version de SortedSet. Cela est dû au fait que NavigableSet hérite de l'interface SortedSet.

Par conséquent, toutes les méthodes de SortedSet sont également disponibles dans NavigableSet. Pour en savoir plus sur ces méthodes, visitezJava SortedSet.

Cependant, dans NavigableSet, certaines méthodes de SortedSet (headSet(), tailSet() et subSet()) sont définies différemment.

Voyons comment définir ces méthodes dans NavigableSet.

headSet(element,booleanValue)

La méthode headSet() retourne tous les éléments du ensemble navigable précédant l'élément spécifié (passé en paramètre).

Le paramètre booleanValue est optionnel. La valeur par défaut est false.

Si la valeur de booleanValue est true, cette méthode retourne tous les éléments précédant l'élément spécifié, y compris l'élément spécifié.

tailSet(element,booleanValue)

tailSet() retourne tous les éléments de la collection navigable après l'élément spécifié (transmis en tant que paramètre), y compris l'élément spécifié.

Le paramètre booleanValue est optionnel. La valeur par défaut est true.

Si booleanValue est false, cette méthode retourne tous les éléments après l'élément spécifié, sans inclure l'élément spécifié.

subSet(e1,bv1,e2,bv2)

La méthode subSet() retourne e1et e2tous les éléments entre, y compris e1.

bv1et bv2est un paramètre optionnel. bv1La valeur par défaut est true, bv2La valeur par défaut est false.

si false est transmis comme bv1transmis, alors cette méthode retourne e1et e2tous les éléments entre, sans inclure e1.

si true est transmis comme bv2transmis, alors cette méthode retourne e1et e2tous les éléments entre, y compris e1.

NavigableSet fournit diverses méthodes utilisables pour naviguer dans ses éléments.

  • DescendingSet() - Inverser l'ordre des éléments de la collection

  • DescendingIterator() - Retourner un itérateur, qui peut être utilisé pour itérer sur la collection dans l'ordre inverse

  • ceiling() - Retourner l'élément le plus petit supérieur ou égal à l'élément spécifié

  • floor() - Retourner l'élément le plus grand inférieur ou égal à l'élément spécifié

  • Higher() - Retourner l'élément le plus petit supérieur à l'élément spécifié

  • lower() - Retourner l'élément le plus grand inférieur à l'élément spécifié

  • pollFirst() - Retourner et supprimer l'élément premier de la collection

  • pollLast() - Retourner et supprimer l'élément final de la collection

Implémentation de NavigableSet dans la classe TreeSet

import java.util.NavigableSet;
import java.util.TreeSet;
class Main {
    public static void main(String[] args) {
        //Créer un NavigableSet en utilisant TreeSet
        NavigableSet<Integer> numbers = new TreeSet<>();
        //Insérer un élément dans la collection
        numbers.add(1);
        numbers.add(2);
        numbers.add(3);
        System.out.println("NavigableSet: " + numbers);
        //Accéder à l'élément premier
        int firstElement = numbers.first();
        System.out.println("Premier élément: " + firstElement);
        //Accéder à l'élément final
        int lastElement = numbers.last();
        System.out.println("Last element: ", + lastElement);
        //Delete the first element
        int number1 = numbers.pollFirst();
        System.out.println("Delete the first element: ", + number1);
        //Delete the last element
        int number2 = numbers.pollLast();
        System.out.println("Delete the last element: ", + number2);
    }
}

Output result

NavigableSet: [1, 2, 3]
First element: 1
Last element: 3
Delete the first element: 1
Delete the last element: 3

To learn more about TreeSet, please visitJava TreeSet.

Since we have already known the NavigableSet interface, we will use the TreeSet class to learn its implementation.