diff --git a/src/main/java/org/apache/commons/lang3/CharRange.java b/src/main/java/org/apache/commons/lang3/CharRange.java index 8cff4bf6f..e5b85432f 100644 --- a/src/main/java/org/apache/commons/lang3/CharRange.java +++ b/src/main/java/org/apache/commons/lang3/CharRange.java @@ -31,7 +31,7 @@ * @since 1.0 * @version $Id$ */ -public final class CharRange implements Serializable { +public final class CharRange implements Iterable, Serializable { /** * Required for serialization support. Lang version 2.0. @@ -251,18 +251,26 @@ public String toString() { * * @return an iterator to the chars represented by this range */ - public Iterator iterator() { + public Iterator iterator() { return new CharacterIterator(this); } - static class CharacterIterator implements Iterator { - /** The currect character */ + /** + * Character {@link Iterator}. + */ + private static class CharacterIterator implements Iterator { + /** The current character */ private char current; private CharRange range; private boolean hasNext; - public CharacterIterator(CharRange r) { + /** + * Construct a new iterator for the character range. + * + * @param r The character range + */ + private CharacterIterator(CharRange r) { range = r; hasNext = true; @@ -282,6 +290,9 @@ public CharacterIterator(CharRange r) { } } + /** + * Prepare the next character in the range. + */ private void prepareNext() { if (range.negated) { if (current == Character.MAX_VALUE) { @@ -316,7 +327,7 @@ public boolean hasNext() { * * @return Character for the next character */ - public Object next() { + public Character next() { if (hasNext == false) { throw new NoSuchElementException(); }