logo Practice-It logo

CharacterIterator

Language/Type: Java collections Iterator
Author: Marty Stepp (on 2013/01/29)

Write a class named CharacterIterator that would be usable as a stand-alone class to implement an iterator over the characters of a string. Your iterator's constructor should accept the string over which to iterate, and a boolean value named reverse to indicate whether to iterate over the characters in forward (false) or backward (true) order.

CharacterIterator itr = new CharacterIterator("HELLO", false);
while (itr.hasNext()) {
    System.out.print(itr.next() + "! ");   // H! E! L! L! O! 
}
CharacterIterator itr2 = new CharacterIterator("GOODBYE", true);
while (itr2.hasNext()) {
    System.out.print(itr2.next() + "! ");   // E! Y! B! D! O! O! G! 
}

Implement the hasNext and next operations; when the remove method is called, you can throw an UnsupportedOperationException. Your iterator should not construct any internal data structures.

Type your solution here:


This is a class problem. Submit a complete Java class as described.

You must log in before you can solve this problem.


Log In

If you do not understand how to solve a problem or why your solution doesn't work, please contact your TA or instructor.
If something seems wrong with the site (errors, slow performance, incorrect problems/tests, etc.), please

Is there a problem? Contact a site administrator.