scala中的sortWith

Scala 复制代码
    Array(-1,0,1,3,2).sortWith((a,b)=>Math.abs(a-0)<Math.abs(b-0)).foreach(println)

    Array(-1,0,1,2,3).sortWith((a,b)=>Math.abs(a-2)> Math.abs(b-2)).foreach(println)

sortWith:基于函数的排序,通过一个comparato函数,实现自定义排序逻辑

方法:它使用传入的比较函数对集合进行排序,在排序过程中,根据比较函数的返回值来决定元素的顺序,如果比较函数返回true,则表示第一个参数应该排在第二个参数之前;如果返回false,则表示第一个函数应该排在第二个函数之后。

排序函数返回true表示第一个元素应该排在第二个元素之前

相关推荐
达达尼昂8 小时前
编码智能体中的模型选择与执行深度
人工智能·后端·程序员
用户6757049885028 小时前
写了 6 年 Go ,我终于领悟到了泛型的真正威力!
后端·go
名字还没想好☜8 小时前
Go error 处理:errors.Is/As 与错误包装
开发语言·后端·golang·go·错误处理
红糖奶茶8 小时前
Python 中 while 循环计数异常的常见原因分析与正确搓搓
开发语言·python
Lucky_Turtle8 小时前
【论文写作】PDF图片不清晰,打印生成PDF空白大,PDF字体嵌入
开发语言·pdf·c#
csdndenglu9 小时前
Easy3D:一个轻量级、易用、高效的C++库,用于处理和渲染3D数据,无复杂要求时可替代VTK
开发语言·c++·图形渲染·3d渲染
doiito9 小时前
【安全,架构】RustyVault 项目深度分析报告以及和HashiCorp Vault的差异
后端·安全·rust
尚早立志9 小时前
Spring Boot 之 BeanDefinitionLoader 详解
java·spring boot·后端
byte轻骑兵9 小时前
【AVRCP】规范精讲[41]:AV/C指令帧解析,蓝牙遥控交互的底层语言
c语言·开发语言·人机交互·智能制造·avrcp
发光小北9 小时前
Bronze100系列plc Modbus及自由口通信案例
开发语言·php