Scala集合常用函数 - 初级计算函数

这篇具有很好参考价值的文章主要介绍了Scala集合常用函数 - 初级计算函数。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

水善利万物而不争,处众人之所恶,故几于道💦

目录

  1. 求和
  2. 求乘积
  3. 最大值
  4. 最小值
  5. 排序

    sorted
    sortBy()
    sortWith()


以List集合为例:
val list: List[Int] = List(4, 9, 1, 2, 16, 5)

1. 求和

println(list.sum)

2. 求乘积

println(list.product)

3. 最大值

println(list.max)

4. 最小值

println(list.min)

5. 排序

1. sorted
 对一个集合进行自然排序,通过传递隐式的Ordering

println(list.sorted)
println(list.sorted.reverse) // 升序后将集合反转就是降序排序

  最简单的排序方法,默认是升序排序,想要降序排序的话,直接将升序好的集合反转就可以了。


2. sortBy()
 对一个属性或多个属性进行排序,通过它的类型。

println(list.sortBy(elem => elem))
println(list.sortBy(elem => elem.abs)) //按绝对值大小进行升序排序
println(list.sortBy(elem => -elem))  // 降序排序
println(list.sortBy(elem => elem).reverse)  // 降序排序

  首先说下格式,第一行,不能简写成list.sortBy(_),因为类型推断的时候他会找最近的表达式,而最近的表达式是list.sortBy(_)这个整体,他会将整体进行类型推断,所以不是我们期望的,因此会报错。所以得出结论:如果函数参数和函数体是一致的情况,那么不能简化

  sortBy()方法的参数是一个函数类型,而且是单个参数,用于指明用谁去进行排序,这里用它本身去进行排序,或者用绝对值,相反数…进行排序


3. sortWith()
 基于函数的排序,通过一个comparator函数,实现自定义排序的逻辑。

println(list.sortWith((a: Int, b: Int) => {a < b}))
println(list.sortWith(_ < _))

  要求传两个参数,代表集合中的两个元素,函数体指明排序规则文章来源地址https://www.toymoban.com/news/detail-598338.html

到了这里,关于Scala集合常用函数 - 初级计算函数的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • spark底层为什么选择使用scala语言开发

    基于Scala的语言特性 集成性:Scala 是一种运行在 Java 虚拟机(JVM)上的静态类型编程语言,可以与 Java 代码无缝集成。由于 Spark 涉及到与大量 Java 生态系统的交互,例如 Hadoop、Hive 等,使用 Scala 可以方便地与这些组件进行集成和交互。 函数式编程支持:Scala 是一种面向函数

    2024年02月10日
    浏览(16)
  • 十分钟带汝入门大数据开发语言Scala

    十分钟带汝入门大数据开发语言Scala

    大家好,我是百思不得小赵。 创作时间:2022 年 6 月 7 日 博客主页: 🔍点此进入博客主页 —— 新时代的农民工 🙊 —— 换一种思维逻辑去看待这个世界 👀 今天是加入CSDN的第1193天。觉得有帮助麻烦👏点赞、🍀评论、❤️收藏 Scala是一门多范式的编程语言,一种类似Ja

    2024年02月02日
    浏览(15)
  • Scala之集合(3)

    Scala之集合(3)

      目录   WordCount案例: 需求分析与步骤: 拆分: 聚合: 格式转化: 方法1: 方法2: 排序: 方法1: 方法2: 取top3: 整体化简后的代码: WordCoount案例升级: 给定数据: 方法1: 方法2: 方法3: 并行集合:   聚合过程较为繁琐,分为以下几步: (1)先将切割后的List集合

    2023年04月24日
    浏览(13)
  • Scala集合 - List

    水善利万物而不争,处众人之所恶,故几于道💦 一、不可变List   1. 创建List   2. 取指定的数据   3. 向List中添加元素   4. 遍历List   5. 集合间合并 - 扁平化处理 二、可变List   1. 创建可变集合对象   2. 添加元素   3. 修改元素   4. 删除元素 1. 创建List   创建一个L

    2024年02月15日
    浏览(13)
  • Scala之集合(1)

    Scala之集合(1)

    目录 ​​​​​​​集合介绍: 不可变集合继承图:​编辑  可变集合继承图 数组: 不可变数组: 样例代码: 遍历集合的方法: 1.for循环 2.迭代器 3.转换成List列表: 4.使用foreach()函数: 可变数组: ArrayBuffer: 二维数组:  List集合: Set 集合: 不可变 Set: 可变Set: Map集合

    2023年04月18日
    浏览(14)
  • Scala之集合(2)

    Scala之集合(2)

      目录 集合基本函数: (1)获取集合长度 (2)获取集合大小 (3)循环遍历 (4)迭代器 (5)生成字符串 (6)是否包含 衍生集合: (1)获取集合的头 (2)获取集合的尾 (3)集合最后一个数据 (4)集合初始数据 (5)反转 (6)取前(后)n 个元素 (7)去掉前(后)

    2024年02月02日
    浏览(13)
  • Scala集合

    Scala集合

    scala中的集合分为两种 ,可变集合和不可变集合, 不可变集合可以安全的并发的访问! 集合的类主要在一下两个包中 可变集合包 scala.collection.mutable 不可变集合包 scala.collection.immutable 默认的 Scala 不可变集合,就是指该集合对象不可修改,每次修改就会返回一个新对象,而不会对

    2024年01月20日
    浏览(9)
  • Scala集合 - Set

    水善利万物而不争,处众人之所恶,故几于道💦 一、不可变Set集合   1. 创建集合   2. 添加元素   3. 删除元素   4. 遍历集合 二、可变Set集合   1. 创建可变集合   2. 添加元素   3. 删除元素   4. 遍历集合 1. 创建集合   Set点进去是个特质,没法new,直接用伴生对象的

    2024年02月16日
    浏览(11)
  • Scala集合继承体系图

    Scala集合继承体系图

    1) Scala 的集合有三大类:序列 Seq、集Set、映射 Map,所有的集合都扩展自 Iterable特质。 2) 对于几乎所有的集合类,Scala 都同时提供了可变和不可变的版本,分别位于以下两个包 不可变集合:scala.collection.immutable 可变集合: scala.collection.mutable 3) Scala 不可变集合,就是指该

    2024年02月10日
    浏览(9)
  • 第7章 Scala集合

    第7章 Scala集合

    ​ ​ scala.collection.immutable ​ scala.collection.mutable ​ ​ 不可变数组 可变数组 多维度数组 不可变列表 可变列表 不可变Set 可变Set ​ 不可变Map 可变Map ​ 通用属性和操作 衍生集合 ​ 简单计算函数 ​ 高级计算函数 ​​ ​ 应用案例-合并Map 队列 ​ 并行集合 ​

    2024年02月10日
    浏览(11)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包