Difference between HashSet ,LinkedHashSet and TreeSet

Difference between HashSet ,LinkedHashSet and TreeSet?

1. HashSet not maintaining any order ,LInkedHashSet maintaining the insertion Order ,TreeSet is maintaining the Sorting order

2. HashSet and LinkedHashSet uses equals() method in Java for comparison but TreeSet uses compareTo() method

3. HashSet and LinkedHashSet allows null values but TreeSet doesn't allow null values

Example

Here is one example to show the difference between HashSet ,LinkedHashSet and TreeSet

 

package com.vinod.test;

import java.util.HashSet;
import java.util.LinkedHashSet;
import java.util.Set;
import java.util.TreeSet;

public class HashExample {
    public static void main(String[] args) {
        Set<String> hs = new HashSet<String>();
        hs.add("vinod");
        hs.add("santhosh");
        hs.add("ajay");

        Set<String> ts = new TreeSet<String>();
        ts.add("vinod");
        ts.add("santhosh");
        ts.add("ajay");

        Set<String> ls = new LinkedHashSet<String>();
        ls.add("vinod");
        ls.add("santhosh");
        ls.add("ajay");

        System.out.println("Hashset " + hs); // No order
        System.out.println("TreeSet " + ts);// Natural ordering
        System.out.println("LinkedHashSet " + ls); // Insertion order

    }

}

Output

Hashset [vinod, santhosh, ajay]

TreeSet [ajay, santhosh, vinod]

LinkedHashSet [vinod, santhosh, ajay]

Done!!! 

 

No comments:

Post a Comment

12 classic String-based Java interview questions with simple explanations and code.

  1️⃣ Check if a String is a Palindrome Problem Given a string, check if it reads the same forward and backward. Example: "madam...

Featured Posts