import java.util.Iterator; public class Range implements Iterable { int start; int steg; int slutt; @Override public Iterator iterator() { return new RangeIterator(); } private class RangeIterator implements Iterator { int i = start; public boolean hasNext() { return i <= slutt-steg; } public Integer next() { int forrige = i; i += steg; return forrige; } } public Range(int slutt) { this(0, slutt); } public Range(int start, int slutt) { this(start, 1, slutt); } public Range(int start, int steg, int slutt) { this.start = start; this.steg = steg; this.slutt = slutt; } public static void main(String[] args) { for (int tall : new Range(2, 2, 10)) { System.out.println(tall); } } }