java中的list按降序排序

网友投稿 286 2022-11-28

java中的list按降序排序

习惯了C#中的LINQ,在java中感到很不方便。要将一个实体数组(即元素为实体的数组)List进行排序,要怎么写呢?代码长的可笑:

实体类

public class Menu { private int id; private String name; private String title; private String url; public int getId() { return id; } public void setId(int id) { this.id = id; } public String getUrl() { return url; } public void setUrl(String url) { this.url = url; } public String getTitle() { return title; } public void setTitle(String title) { this.title = title; } public String getName() { return name; } public void setName(String name) { this.name = name; }}

假设现在有一个List

menus,想按照id的降序进行排序,要怎么写呢?

menus = menus .stream() .sorted(Comparator.comparing(Menu::getId).reversed()) .collect(Collectors.toList());

再看看C#

menus = menus.OrderByDescending(s => s.Id).ToList();

随着C#也能跨平台,是不是.NET的春天快到了?

2019.08.17 排序的时候,如果排序字段内容是数值,但字段类型是字符串,那么应该先转换成数值再比较,否则结果不准确。如何转换呢,可以这样写:

.sorted(Comparator.comparing(s -> Long.parseLong(s.getT())))

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:360快充拆解,原来你是这样的架构
下一篇:89S52单片机检测控制温度的监测系统实现
相关文章

 发表评论

暂时没有评论,来抢沙发吧~