文章目录
- 一、容器概念
- 二、定长数组
一、容器概念
1.集合是一种用来存储各种对象和数据的容器。
2.Scala集合分为可变和不可变的集合,不可变集合可以安全的并发访问。
可变集合可以在适当的地方被更新或扩展。这意味着可以修改,添加,移除一个集合的元素。
不可变集合,相比之下,永远不会改变。但是仍然可以模拟添加,移除或更新操作。但是这些操作将在每一种情况下都返回一个新的集合,同时使原来的集合不会发生改变。
3.Scala集合两个主要包
不可变集合:scala.collection.immutable
可变集合:scala.collection.mutable
Scala默认采用不可变集合。
4.Scala的集合有三大类:序列Seq、集合Set、映射Map,所有的集合都扩展自Iterable特质。
集合 | 说明 |
Scala List (列表) | List的特征是其元素以线性方式存储,集合中可以存放重复对象。 |
Scala Set (集合) | Set是最简单的一种集合。集合中的对象不按特定的方式排序,并且没有重复对象。 |
Scala Map (映射) | Map是一种把键对象和值对象映射的集合,它的每一个元素都包含一对键对象和值对象。 |
Scala Tuple (元组) | 元组是不同类型的值的集合 |
Scala Option (选项) | Option[T]表示有可能包含值的容器,也可能不包含值。 |
Scala Iterator (迭代器) | 迭代器不是一一个容器,更确切的说是逐一-访问容器内元素的方法。 |
- ref:MUTABLE AND IMMUTABLE COLLECTIONS
scala.collection
scala.collection.immutable
scala.collection.mutable
二、定长数组
package Container
object Main {
def main(args: Array[String]): Unit = {
println("hello world")
// 创建int类型,长度为3的数组
val array = new Array[Int](3)
// 使用数组Array的半生对象来创建数组
val strArr = Array[String]("java", "python", "hadoop")
println(array.toBuffer)
println(array.length)
println(strArr.toBuffer)
}
}
- ref:Scala深入学习之集合体系学习(一),深入浅出Scala编程语言入门到精通