public class EmployeeSimple {
private String name;
private Integer age;
private Double salary;
private char level;
private int experience;
}
int minAge = employees.stream()
.filter(Objects::nonNull).filter(emp -> null != emp.getAge()).filter(emp -> null != emp.getName())
.map(EmployeeSimple::getAge)
.min(Comparator.comparing(EmployeeSimple::getSalary))
min(Comparator.comparing(EmployeeSimple::getSalary)) gives this compile time error because in the above line since we performed mapping on EmployeeSimple object where EmployeeSimple object changed its form from EmployeeSimple to age which is an Integer. Now EmployeeSimple no longer exsists to get any field from employeeSimple. int minAge = employees.stream()
.filter(Objects::nonNull).filter(emp -> null != emp.getAge()).filter(emp -> null != emp.getName())
.map(EmployeeSimple::getAge)
.min(Comparator.comparing(Integer::intValue))
if stream<T>