Comparing HashSet and TreeSet Collections in Java

A HashSet is Implemented using a HashTable. Therefore, its elements are stored in a random order. The add(), remove(), and contains() methods of a HashSet have constant time complexity O(1).

A TreeSet is implemented using a tree data structure. The elements in a TreeSet are sorted in a natural order. Therefore, add(), remove(), and contains() methods have time complexity of O(logn).

So from performance perspective, HashSet has better performance than TreeSet. But if you want to store elements in a natural sorting order, then TreeSet is a better collection.



You May Interest

When Will You Use Strategy Design Pattern in Java ?

What are the Examples of Observer Design Pattern in JDK ?

How Can We Analyze the Dependencies in Java Classes and Packages ...

Replacing Hashtable With ConcurrentHashMap in Java

Why Do We Use finalize Method in Java ?