-
Notifications
You must be signed in to change notification settings - Fork 122
/
Copy pathIterateOverLinkedListExample.java
55 lines (45 loc) · 2.32 KB
/
IterateOverLinkedListExample.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
import java.util.Iterator;
import java.util.LinkedList;
import java.util.ListIterator;
public class IterateOverLinkedListExample {
public static void main(String[] args) {
LinkedList<String> humanSpecies = new LinkedList<>();
humanSpecies.add("Homo Sapiens");
humanSpecies.add("Homo Neanderthalensis");
humanSpecies.add("Homo Erectus");
humanSpecies.add("Home Habilis");
System.out.println("=== Iterate over a LinkedList using Java 8 forEach and lambda ===");
humanSpecies.forEach(name -> {
System.out.println(name);
});
System.out.println("\n=== Iterate over a LinkedList using iterator() ===");
Iterator<String> humanSpeciesIterator = humanSpecies.iterator();
while (humanSpeciesIterator.hasNext()) {
String speciesName = humanSpeciesIterator.next();
System.out.println(speciesName);
}
System.out.println("\n=== Iterate over a LinkedList using iterator() and Java 8 forEachRemaining() method ===");
humanSpeciesIterator = humanSpecies.iterator();
humanSpeciesIterator.forEachRemaining(speciesName -> {
System.out.println(speciesName);
});
System.out.println("\n=== Iterate over a LinkedList using descendingIterator() ===");
Iterator<String> descendingHumanSpeciesIterator = humanSpecies.descendingIterator();
while (descendingHumanSpeciesIterator.hasNext()) {
String speciesName = descendingHumanSpeciesIterator.next();
System.out.println(speciesName);
}
System.out.println("\n=== Iterate over a LinkedList using listIterator() ===");
// ListIterator can be used to iterate over the LinkedList in both forward and backward directions
// In this example, we start from the end of the list and traverse backwards
ListIterator<String> humanSpeciesListIterator = humanSpecies.listIterator(humanSpecies.size());
while (humanSpeciesListIterator.hasPrevious()) {
String speciesName = humanSpeciesListIterator.previous();
System.out.println(speciesName);
}
System.out.println("\n=== Iterate over a LinkedList using simple for-each loop ===");
for(String speciesName: humanSpecies) {
System.out.println(speciesName);
}
}
}