📅  最后修改于: 2023-12-03 14:47:17.851000             🧑  作者: Mango
Scala是一种支持面向对象和函数式编程的语言,提供了一组灵活且高效的集合框架。Scala集合框架包括可变和不可变集合。
不可变集合是指一旦集合被创建,集合中的元素就不能够被修改或添加。不可变集合使用val修饰,如下所示:
val list = List(1, 2, 3, 4, 5)
val set = Set(1, 2, 3, 4, 5)
不可变列表List和不可变集Set是Scala中最常用的集合类型。List是一个有序的集合,Set是一个无序且不重复的集合。
可变集合与不可变集合相反,可变集合中的元素可以被修改或添加。可变集合使用var修饰。
var list = scala.collection.mutable.ListBuffer[Int]()
list += 1
list += 2
list += 3
在Scala中,集合可以执行以下操作:
以给定的条件过滤集合中的元素,可以使用filter方法。
val list = List(1, 2, 3, 4, 5)
val filteredList = list.filter(_ % 2 == 0)
// filteredList: List[Int] = List(2, 4)
对集合中的每个元素执行给定的操作,可以使用map方法。
val list = List(1, 2, 3, 4, 5)
val mappedList = list.map(_ * 2)
// mappedList: List[Int] = List(2, 4, 6, 8, 10)
将集合中的元素加总,可以使用fold方法。
val list = List(1, 2, 3, 4, 5)
val sum = list.foldLeft(0)(_ + _)
// sum: Int = 15
将集合中的元素按照给定的顺序排序,可以使用sort方法。
val list = List(5, 2, 7, 1, 3)
val sortedList = list.sorted
// sortedList: List[Int] = List(1, 2, 3, 5, 7)
将嵌套的集合平铺展开,可以使用flatten方法。
val nestedList = List(List(1, 2), List(3, 4), List(5, 6))
val flatList = nestedList.flatten
// flatList: List[Int] = List(1, 2, 3, 4, 5, 6)
Scala的集合框架提供了广泛的集合类型和操作,既支持不可变集合也支持可变集合。使用Scala的集合框架,我们可以轻松地执行各种集合操作,提高代码的可读性和实现效率。