[开发|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 对象。

相关推荐
eqwaak04 分钟前
动态图表导出与视频生成:精通Matplotlib Animation与FFmpeg
开发语言·python·ffmpeg·音视频·matplotlib
刘新明19896 分钟前
Frida辅助分析OLLVM虚假控制流程(下)
java·开发语言·前端
第二只羽毛28 分钟前
重载和继承的实践
java·开发语言
王嘉俊92533 分钟前
设计模式--适配器模式:优雅解决接口不兼容问题
java·设计模式·适配器模式
王嘉俊92534 分钟前
设计模式--组合模式:统一处理树形结构的优雅设计
java·设计模式·组合模式
道199341 分钟前
50 台小型无人车与50套穿戴终端 5 公里范围内通信组网方案深度研究
java·后端·struts
迎風吹頭髮1 小时前
UNIX下C语言编程与实践35-UNIX 守护进程编写:后台执行、脱离终端、清除掩码与信号处理
java·c语言·unix
光军oi1 小时前
全栈开发杂谈————JAVA微服务全套技术栈详解
java·开发语言·微服务
帮帮志1 小时前
目录【系列文章目录】-(关于帮帮志,关于作者)
java·开发语言·python·链表·交互
聪明的笨猪猪1 小时前
Java Spring “MVC ”面试清单(含超通俗生活案例与深度理解)
java·经验分享·笔记·面试