We can print Linked list with Iterator and for loop. How does it differ as far as memory allocation is concerned? Which one is more effective?
public class Demo {
public static void main(String[] args) {
LinkedList<String> placesToVisit = new LinkedList<String>();
placesToVisit.add("Sydney");
placesToVisit.add("Melbourne");
placesToVisit.add("Brisbane");
placesToVisit.add("Perth");
printListWithoutFor(placesToVisit);
printListWithFor(placesToVisit);
}
private static void printListWithoutFor(LinkedList<String> linkedList) {
Iterator<String> i = linkedList.iterator();
while (i.hasNext()) {
System.out.println("Now visiting " + i.next());
}
System.out.println("=========================");
}
private static void printListWithFor(LinkedList<String> linkedList){
for (int i=0; i<linkedList.size(); i++){
System.out.println("Now visiting " + linkedList.get(i));
}
}
}