📘 Premium Read: Access my best content on Medium member-only articles — deep dives into Java, Spring Boot, Microservices, backend architecture, interview preparation, career advice, and industry-standard best practices.
🎓 Top 15 Udemy Courses (80-90% Discount): My Udemy Courses - Ramesh Fadatare — All my Udemy courses are real-time and project oriented courses.
▶️ Subscribe to My YouTube Channel (176K+ subscribers): Java Guides on YouTube
▶️ For AI, ChatGPT, Web, Tech, and Generative AI, subscribe to another channel: Ramesh Fadatare on YouTube
1. Introduction
Sorting a Set in Java involves organizing its elements according to a specified order, either natural or custom order defined by a Comparator. Since the Set itself does not guarantee any specific order of its elements, we often need to convert it into a List or use a Tree Set to sort the elements. This blog post will explore how to sort a Set in Java using these approaches.
2. Program Steps
1. Create a Set with some unsorted elements.
2. Convert the Set to a List and sort the List.
3. Create a TreeSet from the Set for natural ordering.
4. Display the sorted elements.
3. Code Program
import java.util.*; public class SortSet { public static void main(String[] args) { // Creating a HashSet with unsorted elements Set<Integer> numbersSet = new HashSet<>(Arrays.asList(5, 1, 4, 3, 2)); // Approach 1: Converting Set to List and sorting List<Integer> numbersList = new ArrayList<>(numbersSet); Collections.sort(numbersList); // Approach 2: Creating a TreeSet to sort the Set Set<Integer> sortedSet = new TreeSet<>(numbersSet); // Displaying the sorted List System.out.println("Sorted List: " + numbersList); // Displaying the sorted Set System.out.println("Sorted Set: " + sortedSet); } }
Output:
Sorted List: [1, 2, 3, 4, 5] Sorted Set: [1, 2, 3, 4, 5]
Explanation:
1. The program starts by creating a HashSet named numbersSet containing some unsorted integers. HashSet does not maintain any order of its elements.
2. In the first approach to sort the Set, we convert numbersSet into an ArrayList called numbersList since Lists can be sorted. We then use Collections.sort() to sort numbersList. This method sorts the List in ascending natural order.
3. In the second approach, we create a TreeSet named sortedSet and initialize it with the elements of numbersSet. TreeSet is a sorted set implementation that sorts the elements in the natural order as they are added. By passing numbersSet to the TreeSet constructor, we effectively sort its elements.
4. Finally, the sorted List and Set are printed to the console, demonstrating the sorting of the original Set's elements.
5. These approaches highlight how to sort the elements of a Set in Java, either by converting the Set to a List or using a TreeSet for natural ordering.
Comments
Post a Comment
Leave Comment