📘 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.
✅ Some premium posts are free to read — no account needed. Follow me on Medium to stay updated and support my writing.
🎓 Top 10 Udemy Courses (Huge Discount): Explore My Udemy Courses — Learn through real-time, project-based development.
▶️ Subscribe to My YouTube Channel (172K+ subscribers): Java Guides on YouTube
Order Preservation:
Null elements:
No Duplicates:
Non-synchronized:
Performance:
Uses:
Iteration:
Inherits from HashSet:
Create LinkedHashSet and Add Elements to It
// Import the necessary class from the Java Collections Framework
import java.util.LinkedHashSet;
public class LinkedHashSetExample {
public static void main(String args[]) {
// Create a new LinkedHashSet of strings
LinkedHashSet<String> linkedHashSet = new LinkedHashSet<String>();
// Add elements to the LinkedHashSet
linkedHashSet.add("Apple");
linkedHashSet.add("Orange");
linkedHashSet.add("Banana");
linkedHashSet.add("Pineapple");
linkedHashSet.add("Apple"); // This will not be inserted as "Apple" is already present in the set
// Try to add a null value
linkedHashSet.add(null);
linkedHashSet.add(null); // This will not be inserted as null is already present in the set
// Print the LinkedHashSet
System.out.println(linkedHashSet); // Outputs: [Apple, Orange, Banana, Pineapple, null]
}
}
Output:
[Apple, Orange, Banana, Pineapple, null]
Access Elements from LinkedHashSet
/ Import the necessary classes
import java.util.LinkedHashSet;
import java.util.Iterator;
public class LinkedHashSetExample {
public static void main(String args[]) {
// Create a new LinkedHashSet of strings
LinkedHashSet<String> linkedHashSet = new LinkedHashSet<String>();
// Add elements to the LinkedHashSet
linkedHashSet.add("Apple");
linkedHashSet.add("Orange");
linkedHashSet.add("Banana");
linkedHashSet.add("Pineapple");
// Create an iterator
Iterator<String> iterator = linkedHashSet.iterator();
// Print the LinkedHashSet using the iterator
while(iterator.hasNext()) {
System.out.println(iterator.next());
}
// Alternatively, you can also use the for-each loop to access elements
System.out.println("\nIterating using for-each loop: ");
for(String fruit : linkedHashSet) {
System.out.println(fruit);
}
}
}
Output:
Apple
Orange
Banana
Pineapple
Iterating using for-each loop:
Apple
Orange
Banana
Pineapple
Removing Elements from LinkedHashSet
// Import the necessary classes
import java.util.LinkedHashSet;
public class LinkedHashSetExample {
public static void main(String args[]) {
// Create a new LinkedHashSet of strings
LinkedHashSet<String> linkedHashSet = new LinkedHashSet<String>();
// Add elements to the LinkedHashSet
linkedHashSet.add("Apple");
linkedHashSet.add("Orange");
linkedHashSet.add("Banana");
linkedHashSet.add("Pineapple");
// Print the original LinkedHashSet
System.out.println("Original LinkedHashSet: " + linkedHashSet);
// Remove the "Orange" element
linkedHashSet.remove("Orange");
// Print the LinkedHashSet after removing "Orange"
System.out.println("LinkedHashSet after removing Orange: " + linkedHashSet);
// If you try to remove an element which does not exist, it will not throw an error.
// It will simply return false.
boolean isRemoved = linkedHashSet.remove("Grapes");
System.out.println("Is Grapes removed: " + isRemoved);
// Clear all elements from the LinkedHashSet
linkedHashSet.clear();
// Print the LinkedHashSet after clearing all elements
System.out.println("LinkedHashSet after clearing all elements: " + linkedHashSet);
}
}
Output:
Original LinkedHashSet: [Apple, Orange, Banana, Pineapple]
LinkedHashSet after removing Orange: [Apple, Banana, Pineapple]
Is Grapes removed: false
LinkedHashSet after clearing all elements: []
Search Elements in LinkedHashSet
// Import the necessary classes
import java.util.LinkedHashSet;
public class LinkedHashSetSearch {
public static void main(String[] args) {
// Create a LinkedHashSet
LinkedHashSet<String> linkedHashSet = new LinkedHashSet<String>();
// Add elements to LinkedHashSet
linkedHashSet.add("Apple");
linkedHashSet.add("Orange");
linkedHashSet.add("Banana");
linkedHashSet.add("Pineapple");
// Display the LinkedHashSet
System.out.println("LinkedHashSet: " + linkedHashSet);
// Check if the LinkedHashSet contains "Apple"
boolean found = linkedHashSet.contains("Apple");
System.out.println("Is Apple in the LinkedHashSet? " + found);
// Check if the LinkedHashSet contains "Grapes"
found = linkedHashSet.contains("Grapes");
System.out.println("Is Grapes in the LinkedHashSet? " + found);
}
}
Output:
LinkedHashSet: [Apple, Orange, Banana, Pineapple]
Is Apple in the LinkedHashSet? true
Is Grapes in the LinkedHashSet? false
Iterating over LinkedHashSet
Using an Iterator
Iterator<String> iterator = linkedHashSet.iterator();
while(iterator.hasNext()) {
String element = iterator.next();
System.out.println(element);
}
Using a for-each loop
for(String element : linkedHashSet) {
System.out.println(element);
}
Using Java 8's forEach method
linkedHashSet.forEach(element -> {
System.out.println(element);
});
Using Java 8's Stream API
linkedHashSet.stream().forEach(System.out::println);
Complete Example
import java.util.LinkedHashSet;
import java.util.Iterator;
public class Main {
public static void main(String[] args) {
LinkedHashSet<String> linkedHashSet = new LinkedHashSet<>();
// Add elements to the LinkedHashSet
linkedHashSet.add("Apple");
linkedHashSet.add("Banana");
linkedHashSet.add("Cherry");
// Using Iterator
System.out.println("Iterating using Iterator:");
Iterator<String> iterator = linkedHashSet.iterator();
while(iterator.hasNext()) {
String element = iterator.next();
System.out.println(element);
}
// Using for-each loop
System.out.println("\nIterating using for-each loop:");
for(String element : linkedHashSet) {
System.out.println(element);
}
// Using Java 8's forEach method
System.out.println("\nIterating using Java 8's forEach method:");
linkedHashSet.forEach(element -> {
System.out.println(element);
});
// Using Java 8's Stream API
System.out.println("\nIterating using Java 8's Stream API:");
linkedHashSet.stream().forEach(System.out::println);
}
}
Output:
Iterating using Iterator:
Apple
Banana
Cherry
Iterating using for-each loop:
Apple
Banana
Cherry
Iterating using Java 8's forEach method:
Apple
Banana
Cherry
Iterating using Java 8's Stream API:
Apple
Banana
Cherry
LinkedHashSet with User defined objects
This example shows how to create a LinkedHashSet of user-defined objects and it maintains insertion order.import java.util.HashSet;
import java.util.Objects;
import java.util.Set;
class Customer {
private long id;
private String name;
public Customer(long id, String name) {
this.id = id;
this.name = name;
}
public long getId() {
return id;
}
public void setId(long id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
// Two customers are equal if their IDs are equal
@Override
public boolean equals(Object o) {
if (this == o) return true;
if (o == null || getClass() != o.getClass()) return false;
Customer customer = (Customer) o;
return id == customer.id;
}
@Override
public int hashCode() {
return Objects.hash(id);
}
@Override
public String toString() {
return "Customer{" +
"id=" + id +
", name='" + name + '\'' +
'}';
}
}
public class HashSetUserDefinedObjectExample {
public static void main(String[] args) {
Set<Customer> customers = new LinkedHashSet<>();
customers.add(new Customer(101, "Ramesh"));
customers.add(new Customer(102, "Umesh"));
customers.add(new Customer(103, "Rajkumar"));
System.out.println(customers);
}
}
import java.util.HashSet;
import java.util.Objects;
import java.util.Set;
class Customer {
private long id;
private String name;
public Customer(long id, String name) {
this.id = id;
this.name = name;
}
public long getId() {
return id;
}
public void setId(long id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
// Two customers are equal if their IDs are equal
@Override
public boolean equals(Object o) {
if (this == o) return true;
if (o == null || getClass() != o.getClass()) return false;
Customer customer = (Customer) o;
return id == customer.id;
}
@Override
public int hashCode() {
return Objects.hash(id);
}
@Override
public String toString() {
return "Customer{" +
"id=" + id +
", name='" + name + '\'' +
'}';
}
}
public class HashSetUserDefinedObjectExample {
public static void main(String[] args) {
Set<Customer> customers = new LinkedHashSet<>();
customers.add(new Customer(101, "Ramesh"));
customers.add(new Customer(102, "Umesh"));
customers.add(new Customer(103, "Rajkumar"));
System.out.println(customers);
}
}
Comments
Post a Comment
Leave Comment