VOOZH about

URL: https://www.geeksforgeeks.org/java/how-to-sort-linkedhashset-elements-using-comparable-interface-in-java/

⇱ How to Sort LinkedHashSet Elements using Comparable Interface in Java? - GeeksforGeeks


  • Courses
  • Tutorials
  • Interview Prep

How to Sort LinkedHashSet Elements using Comparable Interface in Java?

Last Updated : 23 Jul, 2025

The LinkedHashSet is an ordered version of HashSet that maintains a doubly-linked List across all elements. When the iteration order is needed to be maintained this class is used. When iterating through a HashSet the order is unpredictable, while a LinkedHashSet lets us iterate through the elements in the order in which they were inserted.

To sort LinkedHashSet elements using Comparable interface in java first, we create a class Student that implements the Comparable interface. In this class, we override the compareTo() method.

// Student class implements comparable interface

class Student implements Comparable<Student> {
 Integer marks;

 Student(Integer marks) {
 this.marks = marks;
 }

 // override toString method
 public String toString() {
 return (" " + this.marks);
 }

 // Override compareTo method to sort LinkedHashSet in ascending order
 public int compareTo(Student stu) {
 return this.marks.compareTo(stu.marks);
 }
}

And then we pass the set to the TreeSet constructor to sort the elements.

// TreeSet to sort LinkedHashSet using comparable
TreeSet<Student> tree_set = new TreeSet<>(set);

Example 1


Output
Before sort elements in ascending order : [ 500, 300, 400, 100, 200]
After sort elements in ascending order : [ 100, 200, 300, 400, 500]

Example 2

Output:

Before sort elements in descending order : [ 500, 300, 400, 100, 200]
After sort elements in descending order : [ 500, 400, 300, 200, 100]
 
Comment