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

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

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

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

  三、具体步骤

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

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

        

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

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

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

        

    

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

      

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


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。