What does Iterator and ListIterator do?
Also, have some question about my code.....:
Code
package com.company;
import javax.swing.text.html.HTMLDocument;
import java.util.Iterator;
import java.util.LinkedList;
import java.util.ListIterator;
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");
placesToVisit.add("Canberra");
placesToVisit.add("Adelaide");
placesToVisit.add("Darwin");
printList(placesToVisit);
placesToVisit.add(1, "Alice Springs");
printList(placesToVisit);
placesToVisit.remove(4);
printList(placesToVisit);
}
private static void printList(LinkedList<String> linkedList) {
Iterator<String> i = linkedList.iterator();
while(i.hasNext()) {
System.out.println("Now visiting " + i.next());
}
System.out.println("=================================================");
}
private static boolean addInOrder(LinkedList<String> linkedList, String newCity) {
ListIterator<String> stringListIterator = linkedList.listIterator();
while(stringListIterator.hasNext()) {
int comparison = stringListIterator.next().compareTo(newCity);
if(comparison == 0) {
// equal, do not add
System.out.println(newCity + " is already included as a destination");
return false;
} else if(comparison > 0) {
// new city should appear before this one
// Brisbane --> Adelaide
stringListIterator.previous();
stringListIterator.add(newCity);
return true;
} else if(comparison < 0) {
// move on to next city
}
}
stringListIterator.add(newCity);
}
}
wondering what this part does:
Code
ListIterator<String> stringListIterator = linkedList.listIterator();
Thanks guys!!
This post was edited by ferf on Feb 1 2019 11:21pm