我是靠谱客的博主 清秀流沙,这篇文章主要介绍集合中根据String来判定元素的排序,现在分享给大家,希望可以做个参考。

工作时用流排序后,发现个问题。

代码如:

复制代码
1
list.stream().sorted(Comparator.comparing(XXX:getXX));

XXX:getXX 为字符串格式,由于该值为数字的字符串。即当集合里有11,2,这一类数字时,会将11排序在2之前。

该流方法并没有自带的进行判断,测试发现后即改为int类型进行比较

代码如:

复制代码
1
2
3
4
5
6
7
8
9
10
11
list.sort((String x,String y)->Integer.valueOf(x).compareTo(Integer.valueOf(y))); 或 Collections.sort(list, new Comparator<String>() { @Override public int compare(String o1, String o2) { // TODO Auto-generated method stub return Integer.valueOf(o1).compareTo(Integer.valueOf(o2)); } });

也算是在字符串比较排序上面踩了个坑吧。

 

最后

以上就是清秀流沙最近收集整理的关于集合中根据String来判定元素的排序的全部内容,更多相关集合中根据String来判定元素内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(83)

评论列表共有 0 条评论

立即
投稿
返回
顶部