Java 如何在流API中使用后台范围?
我想用“IntStream”来执行后范围 因此,普通的Java 如何在流API中使用后台范围?,java,java-stream,Java,Java Stream,我想用“IntStream”来执行后范围 因此,普通的IntStream.range看起来像: IntStream.range(1, 10) .forEach(System.out::println); 但我需要,像这样: IntStream.range(10, 1) .forEach(System.out::println); 如何实现它?检查示例 一种方法是计算反向数: IntStream.range(1, 10) .map(i -> 10 - i
IntStream.range
看起来像:
IntStream.range(1, 10)
.forEach(System.out::println);
但我需要,像这样:
IntStream.range(10, 1)
.forEach(System.out::println);
如何实现它?检查示例
一种方法是计算反向数:
IntStream.range(1, 10)
.map(i -> 10 - i)
.forEach(System.out::println);
输出
请记住,range
是上限互斥的,因此range(1,10)
生成数字1-9。我在这里假设您的范围(10,1)
应该返回相同的数字,但顺序是降序的,因此仍然是“上限”-独占的,这意味着排除第一个值,而不是最后一个值
IntStream.range(1, 10)
.map(i -> 10 - i)
.forEach(System.out::println);
9
8
7
6
5
4
3
2
1