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 分钟前
Effective C++ 条款07:为多态基类声明 virtual 析构函数
linux·c语言·开发语言·c++
浮游本尊10 分钟前
Java学习第40天 - 数据库基础、表设计与 Spring Boot 数据访问入门
后端
iOS开发上架哦11 分钟前
Jenkins 自动上传 IPA 到 App Store 把发布步骤融入 CI/CD
后端·ios
Java内核笔记11 分钟前
SpringSecurity源码解析三:FilterChainProxy核心代理:智能路由、防火墙与请求分发
后端
凡人叶枫17 分钟前
Effective C++ 条款10:令 operator= 返回一个 reference to *this
java·linux·服务器·开发语言·c++·effective c++
神奇小汤圆33 分钟前
告别“大泥球”:我在 Spring Boot 单体架构中实践的模块化隔离
后端
长大198834 分钟前
Python 新手最容易踩的 10 个语法坑
后端
二月龙36 分钟前
Python 迭代器与生成器精讲:大幅降低内存占用
后端
leo__5201 小时前
MATLAB实现牧羊人算法
开发语言·算法·matlab
格发许可优化管理系统1 小时前
Mentor许可证使用规定全解析
java·大数据·c语言·开发语言·c++