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

相关推荐
j7~8 分钟前
【Linux】二十六.线程篇三《Linux多线程编程:线程控制、线程ID以及进程地址空间分布、线程局部存储__thread以及clone系统调用》---详解
linux·运维·服务器·开发语言·c++·多线程编辑·线程的控制
维吉斯蔡8 小时前
【VS Code / Cursor】文件夹右键快捷打开与文件类型自动关联
开发语言·程序人生·学习方法
前端工作日常8 小时前
我学习到的Java 的 Service 分层:itf 和 impl 到底是什么?
java·后端
前端工作日常9 小时前
我学习到的JIT即时编译与机器码缓存失效
java·后端
犀利豆10 小时前
Claude Code Tools 研究系列(三)ExitPlanMode
人工智能·后端
luj_176810 小时前
星火科技助力边远地区防病攻坚
c语言·开发语言·c++·经验分享·算法
always_TT10 小时前
【Python 日志记录:logging 模块入门】
开发语言·python·php
星栈10 小时前
oh-my-pi工程级AI编码工使用体验
人工智能·后端·agent
xcLeigh10 小时前
Go入门:变量声明的五种方式详解
java·开发语言·golang
zmzb010310 小时前
C++课后习题训练记录Day175
开发语言·c++