我有一个点列表 (x,y),我想求和它们之间的距离。在旧 Java 中,我会这样做:
List<Point> points = ...
long sum = 0;
for (int i = 0; i < points.size() - 1; i++) {
sum += PointUtil.distance(points.get(i), points.get(i + 1));
}
return sum;
现在的问题是:我能否使用 points.stream() 执行相同的代码。 ...
?
最佳答案
这是我能想到的第一件事:
sum = IntStream.range(0,points.size()-1)
.mapToLong(i -> PointUtil.distance(points.get(i), points.get(i + 1)))
.sum();
关于java - 使用 Java8 Streams 求和列表中各点之间的距离,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29280506/