Never been to DZone Snippets before?

Snippets is a public source code repository. Easily build up your personal collection of code snippets, categorize them with tags / keywords, and share them with the world

About this user

Asgeir S. Nilsen http://www.asgeirnilsen.com/

« Newer Snippets
Older Snippets »
Showing 1-1 of 1 total  RSS 

Handy Iterable for a range of Integers

Looping a specific number of times produces code a bit too verbose in Java. The JDK5 enhanced for statement is a handy improvement, but you still have to fall back to the traditional for statement if you want to repeat a loop, say, 10 times.

Not with this implementation of Iterable. You can use it like this:

for (int i : new Range(100))
    System.out.printf("I have said this %d times. Read dzone.com!%n", i);

class Range implements Iterable<Integer> {
    
    private final Integer stop;
    
    public Range(int stop) {
        this.stop = stop;
    }

    public Iterator<Integer> iterator() {
        return new Iterator<Integer>() {
            
            private Integer counter = 0;

            public boolean hasNext() {
                return (counter != stop);
            }

            public Integer next() {
                if (counter == stop)
                    throw new NoSuchElementException();
                return ++counter;
            }

            public void remove() {
            }};
    }
    
}
« Newer Snippets
Older Snippets »
Showing 1-1 of 1 total  RSS