beginnersbook.com

  • Home
  • All Tutorials
    • Learn Servlet
    • Learn JSP
    • Learn JSTL
    • Learn C
    • Learn C++
    • Learn MongoDB
    • Learn XML
    • Learn Python
    • Learn Perl
    • Learn Kotlin
  • Core Java
  • OOPs
  • Collections
  • Java I/O
  • JSON
  • DBMS

TreeSet Class in Java with example

By Chaitanya Singh | Filed Under: Java Collections

TreeSet is similar to HashSet except that it sorts the elements in the ascending order while HashSet doesn’t maintain any order. TreeSet allows null element but like HashSet it doesn’t allow. Like most of the other collection classes this class is also not synchronized, however it can be synchronized explicitly like this: SortedSet s = Collections.synchronizedSortedSet(new TreeSet(...));

In this tutorial we are going to see TreeSet example and the difference between TreeSet and other similar collection classes.

TreeSet Example:

In this example we have two TreeSet (TreeSet<String> & TreeSet<Integer>). We have added the values to both of them randomly however the result we got is sorted in ascending order.

import java.util.TreeSet;
public class TreeSetExample {
     public static void main(String args[]) {
         // TreeSet of String Type
         TreeSet<String> tset = new TreeSet<String>();

         // Adding elements to TreeSet<String>
         tset.add("ABC");
         tset.add("String");
         tset.add("Test");
         tset.add("Pen");
         tset.add("Ink");
         tset.add("Jack");

         //Displaying TreeSet
         System.out.println(tset);

         // TreeSet of Integer Type
         TreeSet<Integer> tset2 = new TreeSet<Integer>();

         // Adding elements to TreeSet<Integer>
         tset2.add(88);
         tset2.add(7);
         tset2.add(101);
         tset2.add(0);
         tset2.add(3);
         tset2.add(222);
         System.out.println(tset2);
    }
 }

Output: You can see both the TreeSet have been sorted in ascending order implicitly.

[ABC, Ink, Jack, Pen, String, Test]
[0, 3, 7, 88, 101, 222]

TreeSet tutorials

  • HashSet vs TreeSet
  • How to convert a HashSet to TreeSet

Reference

  • TreeSet java Documentation

Enjoyed this post? Try these related posts

  1. Hashtable in java with example
  2. Java – Remove all elements from LinkedList example
  3. How to clone an ArrayList to another ArrayList
  4. Remove all mappings from TreeMap example – Java
  5. Map.Entry Interface in Java
  6. Java – Check if a particular element exists in LinkedList example

Comments

  1. Shankar Bendigeri says

    October 7, 2015 at 1:22 PM

    Hello Chaitanya,
    I think one point to be corrected here. In your previous HashSet section you have mentioned, HashSet accepts null element and in this TreeSet section you have mentioned HashSet doesn’t allow null element and TreeSet does. I think TreeSet does not allow and HashSet does. Please correct it if I am right.

    Thanks.

    Reply
    • manish gour says

      June 5, 2016 at 4:25 PM

      Yes I think you are right.
      TreeSet does not allow null value and HashSet allows but only once.

      Reply
  2. Maria says

    June 24, 2016 at 2:01 PM

    Hey Chaitanya!

    Thank you for the information you are providing. It’s been useful many times.

    I have a question: if in my HashSet I keep objects that have different variables, how will it organize them? Can I choose a variable, so that the HashSet is organized according to that?

    Thank’s again

    Reply

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Java Tutorial

  • Java Tutorial
  • OOPs Concepts

Java Collections

  • ArrayList
  • LinkedList
  • ArrayList vs LinkedList
  • Vector
  • ArrayList vs Vector
  • HashMap
  • TreeMap
  • LinkedHashMap
  • HashSet
  • TreeSet
  • LinkedHashSet
  • Hashtable
  • HashMap vs Hashtable
  • Queue
  • PriorityQueue
  • Deque & ArrayDeque
  • Iterator
  • ListIterator
  • Comparable Interface
  • Comparator Interface
  • Java Collections Interview Q

MORE ...

  • Java String
  • Exception handling
  • Java Multithreading
  • Java I/O
  • Java Serialization
  • Java Regex
  • Java AWT
  • Java Swing
  • Java Enum
  • Java Annotations

Copyright © 2012 – 2021 BeginnersBook . Privacy Policy . Sitemap