最小值,最大值,平均值
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分钟学习