欢迎访问yhm138的博客园博客, 你可以通过 [RSS] 的方式持续关注博客更新

MyAvatar

yhm138

HelloWorld!

Scala对字典排序,对对象排序,自定义排序

对字典排序

import scala.collection.mutable._

var grades=Map("Kim"->90,"EMily"->91);
var tmp1=grades.toSeq.sortBy(_._2)
var res=ListMap(tmp1:_*);

List[String,Int] 排序

val a = List(("a",2),("b",44),("c",20),("a",20),("a",1))
a.sortBy(x=>(x._2,x._1))

对对象排序

object _02Simple {
  def main(args: Array[String]): Unit = {
    val firstEmp: Emp = Emp(1, "michael", 10000.00)
    val secondEmp: Emp = Emp(2, "james", 18000.00)
    val thirdEmp = Emp(3, "shaun", 12000.00)
    val empList = List(firstEmp, secondEmp, thirdEmp)
    empList.sortBy(p => p.salary)(Ordering[Double]).foreach(println)
  }
}

case class Emp(id: Int, name: String, salary: Double) {}

sortWith中传入【返回值为布尔型的函数】

List("Here", "are", "some", "sample", "strings", "to", "be", "sorted").sortWith{(a,b) => 
  val cmp=a.size-b.size
  (if (cmp==0) -a.compareTo(b) else cmp) > 0
}
posted @   yhm138  阅读(122)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
点击右上角即可分享
微信分享提示