- Scala 集合教程
- Scala 集合 - 首页
- Scala 集合 - 概述
- Scala 集合 - 环境设置
- Scala 集合 - 数组
- Scala 集合 - 数组
- Scala 集合 - 多维数组
- Scala 集合 - 使用 Range 创建数组
- Scala 集合 - ArrayBuffer
- Scala 集合 - 列表
- Scala 集合 - 列表
- Scala 集合 - ListBuffer
- Scala 集合 - ListSet
- Scala 集合 - 向量
- Scala 集合 - 集合
- Scala 集合 - 集合
- Scala 集合 - BitSet
- Scala 集合 - HashSet
- Scala 集合 - TreeSet
- Scala 集合 - 映射
- Scala 集合 - 映射
- Scala 集合 - HashMap
- Scala 集合 - ListMap
- Scala 集合 - 其他
- Scala 集合 - 迭代器
- Scala 集合 - Option
- Scala 集合 - 队列
- Scala 集合 - 元组
- Scala 集合 - Seq
- Scala 集合 - 栈
- Scala 集合 - 流
- Scala 集合组合器方法
- Scala 集合 - drop
- Scala 集合 - dropWhile
- Scala 集合 - filter
- Scala 集合 - find
- Scala 集合 - flatMap
- Scala 集合 - flatten
- Scala 集合 - fold
- Scala 集合 - foldLeft
- Scala 集合 - foldRight
- Scala 集合 - map
- Scala 集合 - partition
- Scala 集合 - reduce
- Scala 集合 - scan
- Scala 集合 - zip
- Scala 集合有用资源
- Scala 集合 - 快速指南
- Scala 集合 - 有用资源
- Scala 集合 - 讨论
Scala 集合 - scan 方法
scan() 方法是 `TraversableLike` 特质的成员,它类似于 fold 方法,但用于对集合的每个元素应用操作并返回一个集合。
语法
以下是 fold 方法的语法。
def scan[B >: A, That](z: B)(op: (B, B) ? B)(implicit cbf: CanBuildFrom[Repr, B, That]): That
这里,scan 方法将关联二元运算符函数作为参数。此方法返回更新后的集合作为结果。它将第一个输入视为初始值,将第二个输入视为函数。
用法
以下是一个示例程序,演示如何使用 scan 方法:
示例
object Demo { def main(args: Array[String]) = { val list = List(1, 2, 3 ,4) //apply operation to create a running total of all elements of the list val list1 = list.scan(0)(_ + _) //print list println(list1) } }
这里我们将 0 作为初始值传递给 scan 函数,然后将所有值相加。将上述程序保存为 **Demo.scala**。使用以下命令编译和执行此程序。
命令
\>scalac Demo.scala \>scala Demo
输出
List(0, 1, 3, 6, 10)
广告