获取List集合中的最大值和最小值

文章展示了如何在Java中使用Collections类的max和min方法来获取List集合中String、Integer和Double类型的元素的最大值和最小值。对于String类型,需要注意特定情况下的比较问题。当List包含对象时,需要自定义比较逻辑。此外,提到对Integer列表可以使用排序(如冒泡排序)来找到最大和最小值。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

获取List集合中的最大值和最小值

Collections

String、Integer、Double类型

  • 当List中元素为String、Integer、Double类型时,可以使用Collections类中的 max 和 min 方法直接获取最大值和最小值;

  • public static void main(String[] args) {
            List<String> stringList = new ArrayList<>();
            stringList.add("10");
            stringList.add("34");
            stringList.add("67");
            stringList.add("84");
            stringList.add("1");
            System.out.println("(String类型)最大值=" + Collections.max(stringList));
            System.out.println("(String类型)最小值=" + Collections.min(stringList));
     
            List<Integer> integerList = new ArrayList<>();
            integerList.add(5);
            integerList.add(38);
            integerList.add(52);
            integerList.add(88);
            integerList.add(100);
            System.out.println("(Integer类型)最大值=" + Collections.max(integerList));
            System.out.println("(Integer类型)最小值=" + Collections.min(integerList));
     
            List<Double> doubleList = new ArrayList<>();
            doubleList.add(1.5);
            doubleList.add(45.6);
            doubleList.add(88.08);
            doubleList.add(55.2);
            doubleList.add(100.01);
            System.out.println("(Double类型)最大值=" + Collections.max(doubleList));
            System.out.println("(Double类型)最小值=" + Collections.min(doubleList));
        }
    
  • [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-CEPJfcYh-1686095887125)(C:\Users\quyanliang\AppData\Roaming\Typora\typora-user-images\1686095772629.png)]

  • **注意:**当List元素因为类型为String时,可能会出现以下问题;

  • 当最大值为10或10的倍数时不生效,为最小值时生效;

  • [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-eAFD4APH-1686095887126)(C:\Users\quyanliang\AppData\Roaming\Typora\typora-user-images\1686095794630.png)]

  • 当元素数据全部为10或10的倍数时,最大值和最小值均生效;

  • [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-n1jIVEIQ-1686095887126)(C:\Users\quyanliang\AppData\Roaming\Typora\typora-user-images\1686095812798.png)]

对象类型

  • 当List中元素为对象时,比如想要获取年龄最大和最小人的信息;
  • [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-r7TQjHeS-1686095887126)(C:\Users\quyanliang\AppData\Roaming\Typora\typora-user-images\1686095833166.png)]

排序

Integer类型

  • 当List元素类型为Integer时可以使用排序,比如使用冒泡排序将List元素按照从大到小排序,然后取List的第一个和最后一个元素获取最大值和最小值;
  • [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-PdvBjCqk-1686095887127)(C:\Users\quyanliang\AppData\Roaming\Typora\typora-user-images\1686095864074.png)]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

IT枫斗者

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值