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

使用Java 8 lambdas按不同元素对数组列表进行排序

发布时间:2020-12-15 04:38:32 所属栏目:Java 来源:网络整理
导读:如果我有一个List String []其中每个String []如下所示:{FirstName,LastName,Income,City}我如何使用 Java 8 lambdas按列表(如收入或名字)对List进行排序? 解决方法 这是几个例子.将前面两个示例中的x替换为您要用于排序的字段的索引. Collections.sort(pe
如果我有一个List< String []>其中每个String []如下所示:{FirstName,LastName,Income,City}我如何使用 Java 8 lambdas按列表(如收入或名字)对List进行排序?

解决方法

这是几个例子.将前面两个示例中的x替换为您要用于排序的字段的索引.

Collections.sort(personList,(p1,p2) -> p1[x].compareTo(p2[x]));

要么

personList.sort((p1,p2) -> p1[x].compareTo(p2[x]);

另外,我同意@Robin Topper的评论.如果需要lambda(并且你想按名字排序),你可以使用:

Collections.sort(personList,p2) -> p1.getFirstName().compareTo(p2.getFirstName()));

要么

personList.sort((p1,p2) -> p1.getFirstName().compareTo(p2.getFirstName()));

还要考虑使用Robin评论中的可比较实现和允许排序的数据结构.

(编辑:李大同)

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

    推荐文章
      热点阅读