public static void main(String[] args) {
printSumOfAllNumbersInList(List.of(12,45,34,22,56,65));
printSumOfAllNumbersInListUsingFP(List.of(12,45,34,22,56,65));
}
private static void printSumOfAllNumbersInListUsingFP(List<Integer> list) {
/*
* Learning the use of reduce()
*/
System.out.println(list.stream().reduce(PStructured01::printSum));
}
private static int printSum(int a,int b)
{
int sum = a +b;
return sum;
}
private static void printSumOfAllNumbersInList(List<Integer> list) {
int sum = 0;
for (Integer integer: list) {
sum = sum + integer;
}
System.out.println(sum);
}}
我正在解决用例 - 打印所有列表数字的总和并返回总和。
我尝试使用传统方法,后来又尝试使用函数式方法来解决它。
但在功能方法期间,我得到的值 - 234 是正确的,但作为 - 可选[234]
谁能解释一下原因
最佳答案
我在研究中做了这个,首先认为它有点不理解,但这是一个简单的概念
Optional<Integer> op = list.stream().reduce(PStructured01::printSum);
op.ifPresent(System.out::println);
关于java - 正在打印可选[值],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/77067345/