Java8: select min value from specific field of the objects in a list

mat_boy picture mat_boy · Apr 16, 2014 · Viewed 10.5k times · Source

Suppose to have a class Obj

class Obj{

  int field;
}

and that you have a list of Obj instances, i.e. List<Obj> lst.

Now, how can I find in Java8 the minimum value of the int fields field from the objects in list lst?

Answer

maczikasz picture maczikasz · Apr 16, 2014
   list.stream().min((o1,o2) -> Integer.compare(o1.field,o2.field))

Additional better solution from the comments by Brian Goetz

list.stream().min(Comparator.comparingInt(Obj::getField))