Java by API/java.util/Iterator
implements Iterator < Character >
<source lang="java">
import java.util.Iterator; import java.util.NoSuchElementException;
class IterableString implements Iterable<Character>,
Iterator<Character> { private String str; private int count = 0; IterableString(String s) { str = s; } public boolean hasNext() { if(count < str.length()) return true; return false; } public Character next() { if(count == str.length()) throw new NoSuchElementException(); count++; return str.charAt(count-1); } public void remove() { throw new UnsupportedOperationException(); } public Iterator<Character> iterator() { return this; }
}
public class MainClass {
public static void main(String args[]) { IterableString x = new IterableString("This is a test."); for(char ch : x) System.out.print(ch); System.out.println(); }
}
</source>
Iterator: hasNext()
<source lang="java">
/**
*Output:
Original contents of al: C A E B D F Modified list backwards: F+ D+ B+ E+ A+ C+
*/
import java.util.ArrayList; import java.util.Iterator; import java.util.ListIterator; public class MainClass {
public static void main(String args[]) { ArrayList<String> al = new ArrayList<String>(); al.add("C"); al.add("A"); al.add("E"); al.add("B"); al.add("D"); al.add("F"); System.out.print("Original contents of al: "); Iterator<String> itr = al.iterator(); while (itr.hasNext()) { String element = itr.next(); System.out.print(element + " "); } System.out.println(); ListIterator<String> litr = al.listIterator(); while (litr.hasNext()) { String element = litr.next(); litr.set(element + "+"); } // Now, display the list backwards. System.out.print("Modified list backwards: "); while (litr.hasPrevious()) { String element = litr.previous(); System.out.print(element + " "); } }
}
</source>
Iterator: next()
<source lang="java">
/**
*Output:
Original contents of al: C A E B D F Modified list backwards: F+ D+ B+ E+ A+ C+
*/
import java.util.ArrayList; import java.util.Iterator; import java.util.ListIterator; public class MainClass {
public static void main(String args[]) { ArrayList<String> al = new ArrayList<String>(); al.add("C"); al.add("A"); al.add("E"); al.add("B"); al.add("D"); al.add("F"); System.out.print("Original contents of al: "); Iterator<String> itr = al.iterator(); while (itr.hasNext()) { String element = itr.next(); System.out.print(element + " "); } System.out.println(); ListIterator<String> litr = al.listIterator(); while (litr.hasNext()) { String element = litr.next(); litr.set(element + "+"); } // Now, display the list backwards. System.out.print("Modified list backwards: "); while (litr.hasPrevious()) { String element = litr.previous(); System.out.print(element + " "); } }
}
</source>