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表示第一个元素应该排在第二个元素之前

相关推荐
牛奔4 小时前
Go 如何打印调试深层或嵌套的结构体
开发语言·后端·golang
红烧大青虫4 小时前
HarmonyOS应用开发实战:小事记 - 数据迁移策略:RDB 表结构变更的版本号管理与 onUpgrade 回调
后端·华为·harmonyos·鸿蒙系统
geovindu4 小时前
go: Iterative Algorithms
开发语言·后端·算法·golang·迭代算法
学逆向的4 小时前
汇编——JCC指令
开发语言·汇编·网络安全
mayaairi5 小时前
JS循环语句深度解析:嵌套for、while与do...while
开发语言·前端·javascript
阳光是sunny6 小时前
LangGraph实战教程:defer延迟节点——让收尾工作自动排到最后
前端·人工智能·后端
前端工作日常6 小时前
我学习到的Java中domain和dto区别
java·后端
kite01216 小时前
Go语言Map深度解析与最佳实践
开发语言·后端·golang
阳光是sunny6 小时前
LangGraph实战教程:控制流详解
前端·人工智能·后端
hold?fish:palm7 小时前
kv存储主从复制的设计与实现
c++·redis·后端