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

这篇具有很好参考价值的文章主要介绍了获取List集合中的最大值和最小值。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

实现获取List集合中的最大值和最小值共有以下两种方式,根据自己的场景选择合适的方法。

目录

Collections

1、String、Integer、Double类型

2、对象类型

排序

1、Integer类型

2、 基本排序方式:


  • Collections

1、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));
    }

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

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

  • 当最大值为10或10的倍数时不生效,为最小值时生效;获取List集合中的最大值和最小值
  • 当元素数据全部为10或10的倍数时,最大值和最小值均生效;获取List集合中的最大值和最小值

2、对象类型

当List中元素为对象时,比如想要获取年龄最大和最小人的信息;

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

  • 排序

1、Integer类型

当List元素类型为Integer时可以使用排序,比如使用冒泡排序将List元素按照从大到小排序,然后取List的第一个和最后一个元素获取最大值和最小值;

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

2、 基本排序方式:

冒泡排序_想养一只!的博客-CSDN博客主要就是利用两个for循环,然后前一个元素与后一个元素进行大小比较,如果前一个元素比后一个元素大的话,那么就交换他们的位置,逐个比较完所有的元素即可。public static void main(String[] args) {int arr[] = {1,4,9,2,8,3,0};System.out.println("排序之前的数组顺序为:");for(int a : a...https://blog.csdn.net/weixin_45151960/article/details/104761269选择排序_排序算法在大量的元素当中选出几个元素_想养一只!的博客-CSDN博客概念:选择排序也属于内部排序法,是从欲排序的数据中,按指定的规则选出来某一个元素,再依规定交换位置后达到排序的目的。思想:基本思想是:弟一次从arr[0] ~ arr[n-1]中选取最小值,与arr[0]交换,弟二次从arr[1] ~ arr[n-1]中选取最小值,与arr[1]交换,弟三次从arr[2] ~ arr[n-1]中选取最小值,与arr[2]交换,… ,弟i次从arr[i-1] ...https://blog.csdn.net/weixin_45151960/article/details/104762648插入排序法(思路及代码实现)_想养一只!的博客-CSDN博客插入排序法思想:插入排序的基本思想是:把n个待排序的元素看成一个有序表和一个无序表,开始时有序表只包含一个元素,无序表中包含有n-1个元素,排序过程中每次从无序表中取出第一个元素,把它的排序码依次与有序表元素的排序码进行比较,将它插入到有序表中的适当位置,使之成为新的有序表。下图中的初始状态时,17就为有序表中的一个元素,剩下的元素都包含在无序表中,然后取数据3与17进行比较,然后插入到合适的...https://blog.csdn.net/weixin_45151960/article/details/104911052快速排序法(思想及代码实现)_想养一只!的博客-CSDN博客快速排序思想:快速排序是对冒泡排序的一种改进,基本思想是:通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对着两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列。下图所示的是按照最后一个数据作为中间数,然后将整个数组分割成两个部分,代码所示的内容是取数据的中间数作为分界,然后分割成两部分。pub...https://blog.csdn.net/weixin_45151960/article/details/104913035文章来源地址https://www.toymoban.com/news/detail-442969.html

到了这里,关于获取List集合中的最大值和最小值的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包