Learnitweb

Find the Oldest Person in a List Using Java Streams

Assume a Person class:

public class Person {
    private String name;
    private int age;

    // constructor, getters
    public Person(String name, int age) {
        this.name = name;
        this.age = age;
    }

    public String getName() { return name; }
    public int getAge() { return age; }
}

And a list of persons:

List<Person> people = Arrays.asList(
    new Person("Alice", 30),
    new Person("Bob", 45),
    new Person("Charlie", 40)
);

Using max() with Comparator

Person oldest = people.stream()
    .max(Comparator.comparingInt(Person::getAge))
    .orElse(null); // returns null if the list is empty

System.out.println("Oldest person: " + oldest.getName() + ", Age: " + oldest.getAge());