。考虑一个计算一组数字的总和的函数:
import java.util.stream.IntStream;
public class SumOfInts {
public static int sumImperative(int[] nums) {
int sum = 0;
for (int num : nums) {
sum += num;
}
return sum;
}
public static int sumFunctional(int[] nums) {
return IntStream.of(nums).sum();
}
public static void main(String[] args) {
int[] numbers = {1, 2, 3, 4, 5};
System.out.println("Imperative sum: " + sumImperative(numbers));
System.out.println("Functional sum: " + sumFunctional(numbers));
}
}在这种情况下,函数式编程方法(sumFunctional)更简洁、更易于并行,而命令式编程方法(sumImperative)则更直接、开销更低。