- HashSet class implements the Set interface, backed by a hash table.
- HashSet contains the unique elements.
- HashSet does not contains any duplicate keys
- HashSet can have only 1 null key.
- HashSet does not maintained the order of elements or keys.
- HashSet is UnSynchronized and not thread safe.
- Given a HashSet collection having String objects in java.
- We would like to iterate or loop through HashSet collection using java 8.
1. Methods to traverse or loop HashSet collection in java.
- Traverse HashSet<String> using Iterator.
- Iterate HashSet<String> using Java 8 forEach.
2. Iterate or loop String objects of HashSet collection (java8/example)
package org.learn.collection.set.hset;
import java.util.HashSet;
import java.util.Iterator;
import java.util.Set;
public class DemoIterationHashSet {
public static void main(String[] args) {
Set<String> setSports = new HashSet<>();
setSports.add("Tennis");
setSports.add("Cricket");
setSports.add("Tennis");
setSports.add(null);
setSports.add("Basketball");
setSports.add("Cricket");
setSports.add(null);
setSports.add("Basketball");
setSports.add("Golf");
setSports.add("Boxer");
System.out.println("Method 1 - Iterate HashSet: ");
demoIterateHashSet(setSports);
System.out.println("\nMethod 2 - Iterate HashSet using java 8: ");
demoIterateHashSetJava8(setSports);
}
private static void demoIterateHashSet(Set<String> setSports) {
Iterator<String> iterator = setSports.iterator();
while (iterator.hasNext()) {
System.out.println(iterator.next());
}
}
private static void demoIterateHashSetJava8(Set<String> setSports) {
setSports.forEach((key) -> {
System.out.println(key);
});
}
}
3. Output :Iterate/loop String objects of HashSet collection (java8/example)
Method 1 - Iterate HashSet:
null
Tennis
Cricket
Golf
Basketball
Boxer
Method 2 - Iterate HashSet using java 8:
null
Tennis
Cricket
Golf
Basketball
Boxer