• Stream系列(五)Min Max Average方法使用


    最小值,最大值,平均值

    EmployeeTestCase.java
    package com.example.demo;
    
    import lombok.Data;
    import lombok.ToString;
    import lombok.extern.log4j.Log4j2;
    import org.junit.Test;
    
    import java.util.Collection;
    import java.util.Comparator;
    import java.util.List;
    import java.util.stream.Collectors;
    import java.util.stream.LongStream;
    import java.util.stream.Stream;
    
    import static org.junit.Assert.assertEquals;
    import static org.junit.Assert.assertTrue;
    
    @Log4j2
    public class EmployeeTestCase extends BaseTest{
        @Test
        public void minMaxAverage() {
            Employee employeeMaX = list.stream().max(Comparator.comparing(Employee::getSalary)).orElse(null);
            assertEquals("Michael",employeeMaX.getName());
            Employee employeeMin = list.stream().min(Comparator.comparing(Employee::getSalary)).orElse(null);
            assertEquals("Alex",employeeMin.getName());
            double dMax = list.stream().mapToDouble(e -> e.getSalary()).max().orElse(0.00);
            assertTrue(dMax == 2000);
            double dMin = list.stream().mapToDouble(e -> e.getSalary()).min().orElse(0.00);
            assertTrue(dMin == 1000);
            double dAverage = list.stream().mapToDouble(e -> e.getSalary()).average().orElse(0.00);
            log.info("dAverage:{}",dAverage);
        }
    }
    BaseTest.java
    package com.example.demo;
    
    import java.util.Arrays;
    import java.util.List;
    
    public class BaseTest {
        protected static final List<Employee> list = Arrays.asList(
                new Employee(1, "Alex", 1000),
                new Employee(2, "Michael", 2000),
                new Employee(3, "Jack", 1500),
                new Employee(4, "Owen", 1500),
                new Employee(5, "Denny", 2000));
    
        protected static final List<List<Employee>> listFlat = Arrays.asList(
                Arrays.asList(new Employee(1, "Alex", 1000),
                        new Employee(2, "Michael", 2000)),
                Arrays.asList(new Employee(3, "Jack", 1500),
                        new Employee(4, "Owen", 1500)),
                Arrays.asList(new Employee(5, "Denny", 2000)));
    }

    关注公众号,坚持每天3分钟学习

  • 相关阅读:
    spring boot中创建ElasticSearch索引
    spring boot项目16:ElasticSearch-基础使用
    spring cloud项目07:网关(Gateway)(2)
    spring cloud项目06:网关(Gateway)(1)
    Ubuntu上MySQL多实例部署
    MySQL常用命令、配置汇总
    spring boot项目15:安全-基础使用(2)
    spring boot项目14:安全-基础使用(1)
    docker-compose mongodb 副本
    关于golang slice切片的一个问题
  • 原文地址:https://www.cnblogs.com/JavaWeiBianCheng/p/11949472.html
Copyright © 2020-2023  润新知