Collections: TreeSet keeps elements sorted and unique

A TreeSet sorts on insertion using natural order or a comparator, and offers first, last and navigation methods a HashSet cannot.

Code
NavigableSet<String> set = new TreeSet<>(List.of("kafka", "java", "sql", "java"));

System.out.println(set);
System.out.println("first = " + set.first() + ", last = " + set.last());
System.out.println("descending = " + set.descendingSet());

var caseInsensitive = new TreeSet<String>(String.CASE_INSENSITIVE_ORDER);
caseInsensitive.addAll(List.of("Java", "JAVA", "java"));
System.out.println("case-insensitive set size = " + caseInsensitive.size());
Output
[java, kafka, sql]
first = java, last = sql
descending = [sql, kafka, java]
case-insensitive set size = 1
Advertisement

Run this yourself in the Online Java Compiler, spin up a live REST API in the API Sandbox, or practise with Java interview questions.

Published 2026-07-30