private int Sum(ArrayList<Integer> inputs) {
int sum = 0;
inputs.stream().forEach(x -> sum += x);
return sum;
}
这应该起作用:
private int Sum(ArrayList<Integer> inputs) {
return inputs.stream().mapToInt(Integer::intValue).sum();
}
编辑:
使用for-each
的问题在于它是一个终端操作,这意味着它不会产生另一个中间流供我们处理。更好的方法是使用MapToInt
,它生成一个IntStream
,我们可以在这个IntStream
上轻松地找到和。
我通常打印我的数组列表,例如 但我无法将此应用于普通数组()。 如何将此表达式应用于普通数组?
基本上,我有一个列表,它的元素将被一个一个地处理,直到满足某个条件。如果任何元素满足该条件,则应返回,否则返回。该方法如下所示: 有没有一种方法可以在满足条件后立即跳出这个forEach循环,而不是循环所有元素?
我有一个数组列表 如何使用forEach和lambda表达式迭代此列表。
目前我学习Springboot。 在这个代码中 我知道这是lambda表达式,但我没有得到原始代码。这不是我的代码。你能让我知道原始代码吗?
我正在尝试将Java 1.8与lambda表达式一起使用,其中包含Idea UI Designer,我在maven中有: 和依赖关系 当我尝试使用lambdas时,它返回编译错误: 您对如何将lambdas与Idea UI Designer一起使用有何想法?
本文向大家介绍Java中如何调试Lambda表达式,包括了Java中如何调试Lambda表达式的使用技巧和注意事项,需要的朋友参考一下 Lambda表达式由两部分组成,一个是参数,另一个是代码或表达式。 这两个部分由箭头运算符“->”分隔。 我们可以使用NetBeans,IntelliJ和Eclipse等不同的IDE来调试Java中的lambda表达式。 始终可以创建多行lambda表达式,并使用