MST

星途 面试题库

面试题:Java并行流基本操作考察

请用Java并行流对一个包含整数的List进行操作,实现以下功能:计算所有元素的平方和,并返回结果。请写出具体代码实现,同时简要说明并行流相比顺序流在这种场景下可能的优势。
33.8万 热度难度
编程语言Java

知识考点

AI 面试

面试题答案

一键面试

代码实现

import java.util.Arrays;
import java.util.List;

public class ParallelStreamExample {
    public static void main(String[] args) {
        List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5);
        long sumOfSquares = numbers.parallelStream()
               .mapToLong(n -> (long) n * n)
               .sum();
        System.out.println("Sum of squares: " + sumOfSquares);
    }
}

并行流优势

在这种场景下,并行流相比顺序流的优势主要体现在:如果List中的元素数量非常大,并行流能够利用多核CPU的优势,将计算任务分割成多个子任务并行执行,从而加快计算速度。例如在处理海量数据时,顺序流需要逐个处理元素,而并行流可以并发处理多个元素,大大提高了运算效率。