Java:相当于Python的范围(int,int)?
Java有与Python的方法等效的方法吗?range(int, int)
老问题,新答案(适用于 Java 8)
IntStream.range(0, 10).forEach(n -> System.out.println(n));
或使用方法引用:
IntStream.range(0, 10).forEach(System.out::println);
Guava还提供了类似于Python的东西:range
Range.closed(1, 5).asSet(DiscreteDomains.integers());
你也可以实现一个相当简单的迭代器,使用Guava的 AbstractIterator 做同样的事情:
return new AbstractIterator<Integer>() {
int next = getStart();
@Override protected Integer computeNext() {
if (isBeyondEnd(next)) {
return endOfData();
}
Integer result = next;
next = next + getStep();
return result;
}
};