java - How can I retrieve all of the maximum values from a list? -
i have class called employee implements comparable interface. now have 5 employee objects in list, each of has own salary property. want find of employee objects have max salary. i can single object using employee employee = collections.max(employeelist); but returns single employee , while trying retrieve array or list of of objects same max value. how can this? to efficient, should iterate through list , find max elements yourself: list<employee> result = new arraylist<>(); employee currentmax = null; (employee e : list) { if (currentmax == null || e.compareto(currentmax) > 0) { currentmax = e; result.clear(); result.add(e); } else if (currentmax!= null && e.compareto(currentmax) == 0) { result.add(e); } } this solution o(n), , requires single pass through list.