首页 > 其他分享 >Scala的sortedWith

Scala的sortedWith

时间:2024-10-21 15:19:40浏览次数:8  
标签:函数 Scala sortedWith abs sortWith 排序 Math

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

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

sortedWith:排序函数返回 ture表示第一个元素应该排在第二个元素之前.
object day10 {
  def main(args: Array[String]): Unit = {
    //sortedWith:排序函数返回 ture表示第一个元素应该排在第二个元素之前
//    Array(-1,0,1,3,2).sortWith((a,b) => boolean)
    //数字a,到0点的距离是|a-0|
//    Array(-1, 0, 1, 3, 2).sortWith((a, b) => Math.abs(a - 0)<Math.abs(b-0)).foreach(println)
    //练习,按他们到2点的距离从大到小排序。
    Array(-1, 0, 1, 3, 2).sortWith((a, b) => Math.abs(a - 2)>Math.abs(b-2)).foreach(println)
    }


}

标签:函数,Scala,sortedWith,abs,sortWith,排序,Math
From: https://blog.csdn.net/2401_87129116/article/details/142983944

相关文章

  • Scala的抽象类
    1.定义:抽象类是一个不能被实例化的类。无论在Scala中还是Java中都不可以直接创建对象,抽象类通过子类创建对象。//抽象类:制定标准,不要求去具体实现//abstract:抽象abstractclassAICar(){varbrand=""//自动驾驶:不要去具体实现功能defautoRun}//抽象类......
  • Scala的内部类
    Scala的内部类是指定义在类或对象内部的类classCar{privatevarspeed=0//私有属性varcolor="black"defrun():Unit={println(s"runwith${speed}")}//内部类:写在类里面的类//1.定义一个类class......
  • Scala继承和多态
    //定义一个类classAnimal(){println("父类Animal的构造器被调用")varlegs=4defsay():Unit={println("Animalsay....")}defrun():Unit={println("Animalrun....")}}//定义一个子类Dog,继承自父类Animal//继承的好处:(1)不劳而获cla......
  • Scala中reduce函数
    reduce()方法是一个高阶函数,它接受集合中的所有元素(数组,列表等),并使用二进制运算将它们组合以产生单个值。必须确保运算是可交换的和关联的。匿名函数作为参数传递给reduce函数。reduce作用:是一种集合操作,用于对集合中的元素进行聚合操作,返回一个单一的结果。它通过指定的......
  • Scala的fold
    fold的解释为:对数组的每个元素执行指定的二元折叠操作。注意:fold与reduce和reduceleft的区别在于fold有一个初始值,在取值运算的过程中第一个元素需要与初始值进行运算,再一次进行下一步的运算。fold作用:fold是一种集合操作(与reduce类似),用于对集合中的元素进行聚合操作,返回一个......
  • Scala入门基础(12)抽象类
    抽象类,制定标准,不要求去具体实现               包含了抽象方法的类就是抽象类。抽象方法只是有方法名,没有具体方法体的方法定义抽象类要用abstract(抽象)关键字用智能驾驶技术举例:演示)具体属性var,val属性名=值;抽象属性var属性名:类型具体方法:完整......
  • python: invalid value encountered in divide以及invalid value encountered in doub
    运行命令pythoneqtl_prepare_expression.pydata.tpm.gctdata.reads_count.gct--tpm_threshold0.1--count_threshold2--sample_frac_threshold0.2--normalization_methodtmm--outputdata.txt时出现了报错“invalidvalueencounteredindivide”以及“invalidvalue......
  • Scala多样的定义方法
    标准定义defsum(x:Int,y:Int):Int={x+y}新方式:字面量方式varsum1=(x:Int,y:Int)=>{x+y}//简写1,代码只有一句,可以省略{}varsum2=(x:Int,y:Int)=>x+y//简写2,形参可以使用占位符来代替varsum3:(Int,Int)=>Int=_+_/......
  • Scala 的链式风格
    Scala的链式风格通常指的是在代码中使用一系列的方法调用,这些方法调用通过点号(.)连接在一起,形成一条链。这种风格在函数式编程中非常常见,因为它可以提高代码的可读性和表达力。以下是一些Scala链式风格的示例:方法链:在对象上连续调用多个方法。valresult=someObject.met......
  • 识别图形验证码 (Scala 示例)
    安装所需依赖在你的build.sbt文件中添加以下依赖:scalalibraryDependencies+="org.scalaj"%%"scalaj-http"%"2.4.2"下载并保存验证码图片使用scalaj-http下载验证码图片并保存到本地:scalaimportscalaj.http._importjava.nio.file.{Files,Paths}objectCaptch......