NavigableSet

In this chapter you will learn:

  1. What is NavigableSet and how to use NavigableSet

Use NavigableSet

TreeSet is an example of a navigable set. Navigable sets are described by the NavigableSet interface, whose generic type is NavigableSet<E>, which extends SortedSet.

The following code demonstrates a navigable set based on a tree set.

import java.util.Iterator;
import java.util.NavigableSet;
import java.util.TreeSet;
//j  ava 2  s. c o  m
public class Main {
  public static void main(String[] args) {
    NavigableSet<Integer> ns = new TreeSet<Integer>();
    int[] ints = { 8, -1, 4, 0, 1, -6, 9 };
    for (int i : ints)
      ns.add(i);
    System.out.print("Ascending order: ");
    Iterator iter = ns.iterator();
    while (iter.hasNext()){
      System.out.print(iter.next() + " ");
    }
      
    System.out.println();
    System.out.print("Descending order: ");
    iter = ns.descendingIterator();
    while (iter.hasNext()){
      System.out.print(iter.next() + " ");
    }      
    System.out.println("\n");
    outputClosestMatches(ns, 4);
    outputClosestMatches(ns.descendingSet(), 12);
  }

  static void outputClosestMatches(NavigableSet<Integer> ns, int i) {
    System.out.println("Element < " + i + " is " + ns.lower(i));
    System.out.println("Element <= " + i + " is " + ns.floor(i));
    System.out.println("Element > " + i + " is " + ns.higher(i));
    System.out.println("Element >= " + i + " is " + ns.ceiling(i));
    System.out.println();
  }
}

The output:

Next chapter...

What you will learn in the next chapter:

  1. What is Java LinkedHashSet and how to use LinkedHashSet
  2. Copy all elements of LinkedHashSet to an Object Array
Home » Java Tutorial » Set
HashSet
HashSet element adding
HashSet element removing and clearing
HashSet clone
HashSet iterator
HashSet properties
TreeSet
TreeSet elements adding
TreeSet subSet
NavigableSet
LinkedHashSet