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

相关推荐
CoderYanger4 分钟前
优选算法-队列+宽搜(BFS):72.二叉树的最大宽度
java·开发语言·算法·leetcode·职场和发展·宽度优先·1024程序员节
赵大海17 分钟前
黑马《Java架构师实战训练营 (含完整资料)》
java
疏狂难除21 分钟前
随便玩玩lldb (二)
开发语言·后端·rust
不带刺仙人球24 分钟前
list.stream().collect例子
java·list·dubbo
星轨初途28 分钟前
数据结构排序算法详解(5)——非比较函数:计数排序(鸽巢原理)及排序算法复杂度和稳定性分析
c语言·开发语言·数据结构·经验分享·笔记·算法·排序算法
b***653240 分钟前
GO 快速升级Go版本
开发语言·redis·golang
Carve_the_Code1 小时前
分布式订单系统:订单号编码设计实战
java·后端
Home1 小时前
23种设计模式之代理模式(结构型模式二)
java·后端
程序员西西1 小时前
详细介绍Spring Boot中用到的JSON序列化技术?
java·后端
雨中飘荡的记忆1 小时前
MySQL 优化实战
java·mysql