Collectors maxBy(Comparator comparator) example
Description
Collectors maxBy(Comparator<? super T> comparator)
returns a Collector that produces the maximal element according to a given Comparator, described as an Optional<T>.
Syntax
maxBy
has the following syntax.
public static <T> Collector<T,?,Optional<T>> maxBy(Comparator<? super T> comparator)
Example
The following example shows how to use maxBy
.
import java.util.Comparator;
import java.util.Optional;
import java.util.stream.Collectors;
import java.util.stream.Stream;
/*from ww w. j a va 2 s .co m*/
public class Main {
public static void main(String[] args) {
Stream<String> s = Stream.of("1","2","3");
Optional<String> o = s.collect(Collectors.maxBy(Comparator.reverseOrder()));
if(o.isPresent()){
System.out.println(o.get());
}else{
System.out.println("no value");
}
}
}
The code above generates the following result.