大佬教程收集整理的这篇文章主要介绍了使用长返回类型的 lambda 比较器,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
类似的东西
arrayList.sort((long a,long b)->a - b);
返回
可能的从 long 到 int 的有损转换
是否有解决方法可以避免 long 到 int 的转换
您的比较器无效,因为它返回 long 而预期的返回类型是 int(排序函数的预期类型是 int)。
一个解决方案是给出一个返回整数的排序条件(在这里你可以控制排序,升序或降序):
arrayList.sort((x,y) -> (x < y) ? -1 : ((x == y) ? 0 : 1));
另一种解决方案(使用与上一个解决方案相同的逻辑):
arrayList.sort(Long::compareTo)
您也可以使用 java.utils 中的 Comparator
升序:
arrayList.sort(Comparator.naturalOrder())
降序排序:
arrayList.sort(Comparator.reverseOrder())
,
当然。改用 Long.compare(a,b)
,或使用自然顺序 (sort(Comparator.naturalOrder())
) 或 sort(Long::comparE)
。
以上是大佬教程为你收集整理的使用长返回类型的 lambda 比较器全部内容,希望文章能够帮你解决使用长返回类型的 lambda 比较器所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。