List<Object>中,以Object的某一属性值为参照进行排序,选取最大记录的解决办法

  一、场景:java web, 在一列表中选取一条记录,该记录的某一个属性值在此List中为最大值;

    List的格式为List<Object>,其中Object为定义的Vo或者Po类,其中包含属性值。

  二、解决思路:对List进行(降序)排序,然后,选取第一条记录,即为属性最大的记录

  三、具体步骤

    1. Object对应的类继承Comparable<>接口

        这边以CorrosionEval类为范例,如下图:

        

    2. 在该类中重写@Override方法compare()

       注意其中比较条件和返回参数,对应的排序方式,此处为降序排序。

       其中的ceSynthesisWc为该类中的属性,也就是我要比较的属性值。

        

    

    3. 调取类Collection中的sort()排序方法,获取第一条记录,大工搞成。

      

    4. 扩展:多属性进行比较呢?

原文地址:https://www.cnblogs.com/yjwang11/p/8042206.html