我有一行打印数字 0 到 5 的平方:
IntStream.rangeClosed(0, 4).map(i ->i*i).forEach(System.out::println);
输出是
0
1
4
9
16
有没有办法得到如下的输出?
0 :0
1 :1
2 :4
3 :9
4 :16
最佳答案
一旦你将 map
i
到 i*i
你就失去了原来的 i
。
您可以删除 map
并在 forEach
中进行计算:
IntStream.rangeClosed(0, 4).forEach(i -> System.out.println(i + ": " + i*i));
关于java - 如何获取 IntStream.map.forEach 的索引?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43202895/