You could group by salary and then retrieve the list of employees with minimum salary:
List employees = new ArrayList(){{
add(new Employee("bilbo baggins", 10));
add(new Employee("frodo baggins", 10));
add(new Employee("gandalf grey", 100));
}};
Map> result = employees.stream().collect(groupingBy(Employee::getSalary));
List allMin = result.entrySet().stream()
.min(Comparator.comparing(Map.Entry::getKey))
.map(Map.Entry::getValue)
.orElse(Collections.emptyList());
allMin.forEach(System.out::println);
Output
Employee{name='bilbo baggins', salary=10}
Employee{name='frodo baggins', salary=10}