📜  Java中的 IntStream mapToLong()(1)

📅  最后修改于: 2023-12-03 15:16:23.555000             🧑  作者: Mango

Java中的 IntStream mapToLong()

在Java 8中,引入了Stream API,其中包含了IntStream mapToLong()方法,通过它可以将IntStream转换为LongStream,进而对流中的元素进行操作。下面就对该方法进行详细介绍。

语法及参数
LongStream mapToLong(LongToIntFunction mapper)

该方法的参数是一个LongToIntFunction函数式接口,它需要返回一个long类型的值。该函数将流中的每个int类型的元素进行操作,并将其转换为long类型的元素,返回一个新的LongStream对象。

示例

以下代码演示了如何使用IntStream mapToLong()方法将int类型的元素转换为long类型的元素,并计算它们的平方和。

import java.util.stream.IntStream;

public class MapToLongDemo {

    public static void main(String[] args) {
        int[] arr = {1, 2, 3, 4, 5};
        long sumOfSquares = IntStream.of(arr)
                .mapToLong(num -> num * num)
                .sum();
        System.out.println("平方和为:" + sumOfSquares);
    }
}

上述代码首先使用IntStream.of()方法创建IntStream对象,然后使用mapToLong()方法将int类型的元素转换为long类型的元素,并计算它们的平方和。最后使用sum()方法对结果求和。

输出:平方和为:55

总结

IntStream mapToLong()方法是Stream API的一部分,可以将int类型的流转换为long类型的流,并对其中的元素进行操作。通过该方法,可以优雅地简化代码,提升代码的可读性和可维护性。