[开发|java] java list 取某个属性最大的项

示例代码:

java 复制代码
import java.util.*;

class Person {
    private String name;
    private int age;

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

    public int getAge() {
        return age;
    }
}

public class Main {
    public static void main(String[] args) {
        List<Person> personList = new ArrayList<>();
        personList.add(new Person("Alice", 25));
        personList.add(new Person("Bob", 30));
        personList.add(new Person("Charlie", 28));

        // 使用比较器来比较年龄属性
        Comparator<Person> ageComparator = Comparator.comparingInt(Person::getAge);

        // 找到年龄最大的人
        Person oldestPerson = Collections.max(personList, ageComparator);

        System.out.println("Name: " + oldestPerson.getName() + ", Age: " + oldestPerson.getAge());
    }
}

在这个例子中,ageComparator 使用 Comparator.comparingInt() 方法来创建一个比较器,以便根据年龄属性进行比较。然后,Collections.max() 方法使用这个比较器来找到年龄属性最大的那个 Person 对象。

相关推荐
进击的小头4 分钟前
创建型模式:简单工厂模式(C语言实现)
c语言·开发语言·简单工厂模式
2501_9444241215 分钟前
Flutter for OpenHarmony游戏集合App实战之记忆翻牌表情图案
开发语言·javascript·flutter·游戏·harmonyos
爱吃大芒果15 分钟前
Flutter for OpenHarmony前置知识:Dart 语法核心知识点总结(上)
开发语言·flutter·dart
2501_9444241215 分钟前
Flutter for OpenHarmony游戏集合App实战之数字拼图打乱排列
android·开发语言·flutter·游戏·harmonyos
Wpa.wk17 分钟前
持续集成 - 持续集成工具-Jenkins的部署流程
java·运维·经验分享·ci/cd·自动化·jenkins
运维行者_18 分钟前
OpManager 对接 ERP 避坑指南,网络自动化提升数据同步效率
运维·服务器·开发语言·网络·microsoft·网络安全·php
佳哥的技术分享27 分钟前
Function<T, R> 中 apply,compose, andThen 方法总结
java·学习·r语言
wangmengxxw31 分钟前
SpringAI-结构化输出API
java·人工智能·springai
0和1的舞者32 分钟前
基于Spring的论坛系统-前置知识
java·后端·spring·系统·开发·知识