JAVA 利用 Stream求 最大值 最小值 平均值

public class test {
    public static void main(String[] args) {
        //数值集合
        List<Double> doubleList = new ArrayList<>();
        List<String> values = new ArrayList<>();
        doubleList.add(1.0);
        doubleList.add(2.0);
        doubleList.add(3.0);
        doubleList.add(4.0);
        doubleList.add(5.0);
        values.add("1.32");
        values.add("2.32");
        values.add("3.32");
        values.add("4.32");
        values.add("5.32");
        values.add("6.32");

        double max = doubleList.stream().mapToDouble(Double::valueOf).max().getAsDouble();
        double min = doubleList.stream().mapToDouble(Double::valueOf).min().getAsDouble();
        double average = doubleList.stream().mapToDouble(Double::valueOf).average().getAsDouble();

        double maxS = values.stream().mapToDouble(Double::valueOf).max().getAsDouble();
        double minS = values.stream().mapToDouble(Double::valueOf).min().getAsDouble();
        double averageS = values.stream().mapToDouble(Double::valueOf).average().getAsDouble();

        System.out.println(max+" - "+min+" - "+average);
        System.out.println(maxS+" - "+minS+" - "+averageS);
    }
}

如果是对象的话 mapToDouble(用户(对象)::age(参数))

经验分享 程序员 微信小程序 职场和发展