java中List排序无效的问题


今天使用List的排序功能,结果发现怎么排序,都没能成功。

1 list = list.stream().sorted((pre, cur) -> Double.parseDouble(pre) - Double.parseDouble(cur) > 0 ? 0 : 1).collect(Collectors.toList());

最终发现原因,比较器的返回值为正数或负数时才有意义,为0时没法排序。改成一下代码就行

1 list = list.stream().sorted((pre, cur) -> Double.parseDouble(pre) - Double.parseDouble(cur) > 0 ? -1 : 1).collect(Collectors.toList());


免责声明!

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



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM