加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

java – 按字段对元素进行排序

发布时间:2020-12-15 08:26:17 所属栏目:Java 来源:网络整理
导读:我有一组来自同一个类的对象,每个对象都有一个Enum字段,具有可比性. 我怎样才能对该字段进行排序? 我想到了类似的东西: Collections.sort(A,enumField) 但当然enumField并不是一个可以被比较的对象…… 解决方法 Collections.sort不接受Set.它只接受列表,
我有一组来自同一个类的对象,每个对象都有一个Enum字段,具有可比性.
我怎样才能对该字段进行排序?
我想到了类似的东西:

Collections.sort(A,enumField)

但当然enumField并不是一个可以被比较的对象……

解决方法

Collections.sort不接受Set.它只接受列表,因此首先您应该将您的集转换为列表:

ArrayList<YourObject> list = new ArrayList<>(yourSet);

然后,您可以使用自定义比较器调用Collections.sort:

Collections.sort(list,Comparator.comparing(x -> x.enumField));
// now "list" contains the sorted elements.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读