package crunchify.com.tutorials;
import java.util.*;
/**
* @author Crunchify.com
* How to iterate through Java List? Seven (7) ways to Iterate Through Loop in Java.
* 1. Simple For loop
* 2. Enhanced For loop
* 3. Iterator
* 4. ListIterator
* 5. While loop
* 6. Iterable.forEach() util
* 7. Stream.forEach() util
*/
public class CrunchifyIterateThroughList {
public static void main(String[] argv) {
// create list
List<String> crunchifyList = new ArrayList<String>();
// add 4 different values to list
crunchifyList.add("Facebook");
crunchifyList.add("Paypal");
crunchifyList.add("Google");
crunchifyList.add("Yahoo");
// Other way to define list is - we will not use this list :)
List<String> crunchifyListNew = Arrays.asList("Facebook", "Paypal", "Google", "Yahoo");
// Simple For loop
System.out.println("==============> 1. Simple For loop Example.");
for (int i = 0; i < crunchifyList.size(); i++) {
System.out.println(crunchifyList.get(i));
}
// New Enhanced For loop
System.out.println("
==============> 2. New Enhanced For loop Example..");
for (String temp : crunchifyList) {
System.out.println(temp);
}
// Iterator - Returns an iterator over the elements in this list in proper sequence.
System.out.println("
==============> 3. Iterator Example...");
Iterator<String> crunchifyIterator = crunchifyList.iterator();
while (crunchifyIterator.hasNext()) {
System.out.println(crunchifyIterator.next());
}
// ListIterator - traverse a list of elements in either forward or backward order
// An iterator for lists that allows the programmer to traverse the list in either direction, modify the list during iteration,
// and obtain the iterator's current position in the list.
System.out.println("
==============> 4. ListIterator Example...");
ListIterator<String> crunchifyListIterator = crunchifyList.listIterator();
while (crunchifyListIterator.hasNext()) {
System.out.println(crunchifyListIterator.next());
}
// while loop
System.out.println("
==============> 5. While Loop Example....");
int i = 0;
while (i < crunchifyList.size()) {
System.out.println(crunchifyList.get(i));
i++;
}
// Iterable.forEach() util: Returns a sequential Stream with this collection as its source
System.out.println("
==============> 6. Iterable.forEach() Example....");
crunchifyList.forEach((temp) -> {
System.out.println(temp);
});
// collection Stream.forEach() util: Returns a sequential Stream with this collection as its source
System.out.println("
==============> 7. Stream.forEach() Example....");
crunchifyList.stream().forEach((crunchifyTemp) -> System.out.println(crunchifyTemp));
}
}