Trusted answers to developer questions
Trusted Answers to Developer Questions

Related Tags

stream
java
max
communitycreator

What is the Stream max() method in Java?

Programming Bytes

Grokking Modern System Design Interview for Engineers & Managers

Ace your System Design Interview and take your career to the next level. Learn to handle the design of applications like Netflix, Quora, Facebook, Uber, and many more in a 45-min interview. Learn the RESHADED framework for architecting web-scale applications by determining requirements, constraints, and assumptions before diving into a step-by-step design process.

The Stream max() method will return an Optional that contains the largest value of the stream. The largest values are evaluated based on the passed Comparator argument.

  • If the stream is empty, then an empty Optional is returned.
  • If the largest value returned is null, then NullPointerException is thrown.
  • The max method is a terminal operationThe stream cannot be used after this is called..

Example

import java.util.Arrays;
import java.util.List;
import java.util.Optional;
public class Main {
public static void main(String[] args)
{
List<Integer> list = Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9, -10);
Optional<Integer> max;
max = list
.stream()
.max((a, b) -> a - b );
System.out.println("The list is " + list);
System.out.println("Maximum value of the list is " + max.get());
}
}

In the above code, we have used the Stream max() method on the list stream by passing a comparator to get the largest value of the list. The largest value can be retrieved by calling the get method of the returned Optional.

Example with passing comparator

import java.util.Arrays;
import java.util.List;
import java.util.Optional;
import java.util.Comparator;
public class Main {
public static void main(String[] args)
{
List<Integer> list = Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9, -10);
Comparator<Integer> getMax;
getMax = new Comparator<Integer>() {
@Override
public int compare(Integer num1, Integer num2) {
return num1 - num2;
}
};
Optional<Integer> max;
max = list
.stream()
.max(getMax);
System.out.println("The list is " + list);
System.out.println("Maximum value of the list is " + max.get());
}
}

In the above code, we have created a getMax comparator and passed it to the max function, which will call return an Optional with the max value.

RELATED TAGS

stream
java
max
communitycreator

Grokking Modern System Design Interview for Engineers & Managers

Ace your System Design Interview and take your career to the next level. Learn to handle the design of applications like Netflix, Quora, Facebook, Uber, and many more in a 45-min interview. Learn the RESHADED framework for architecting web-scale applications by determining requirements, constraints, and assumptions before diving into a step-by-step design process.

Keep Exploring