Scala 中的映射
Scala 映射
映射是将其元素存储为键值对(例如字典)的集合。同样,称为哈希表的映射具有唯一的键,这些键用于检索与键有关的值。
map可以有两种:
可变和不可变,对于不可变变量,初始化后不能在程序中更改对象。默认情况下,映射是不可变的,要使用可变映射,您必须使用scala.collection.mutable.Map类。
创建一个Scala映射
定义可变和不可变的Scala映射有不同的语法,
创建不可变映射的语法:
map_name = Map(key_1 -> value_1, key_2 -> value_2, key_3 -> value_3)
创建可变映射的语法:
map_name = Scala.collection.mutable.Map(key_1 -> value_1, key_2 -> value_2, key_3 -> value_3)
映射操作
对于Scala中的map,Scalamap上有三个基本操作:
keys:为map的所有键返回一个可迭代的。语法:map_name.keys
values:返回map所有值的可迭代值。语法:map_name.values
isEmpty:如果映射为空,则返回true,否则返回false。
在map上应用的其他一些重要方法...
1)创建一个空映射
Scala编程语言允许您创建一个不包含任何值对的空映射。根据用户要求,可以向其中添加新元素。
语法:
var map_name = scala.collection.mutable.Map[datatype1 , datatype2]()
示例
object MyClass {def main(args: Array[String]) {
var map = scala.collection.mutable.Map[Int, String]()
println("The map created = "+map)
}
}
输出结果
The map created = Map()
2)向数组添加值
在Scala映射中,有一个选项可以添加新的键值对。+ =运算符用于向数组添加新值。
语法:
var map_name += (key1 , value1)
示例
object MyClass {def main(args: Array[String]) {
var map = scala.collection.mutable.Map[Int, String]()
map += (1->"Akash")
map += (2->"Ram", 3->"Kiran") // adding multiple values.
println("The map created = "+map)
}
}
输出结果
The map created = Map(2 -> Ram, 1 -> Akash, 3 -> Kiran)
3)更改Scala映射的值
默认情况下,Scala映射的值无法更改,因为默认情况下它是不可变的。但是您可以更改可变的Scala映射的值。使用其键并分配新值。
语法:
map_name.(key) = value
示例
object MyClass {def main(args: Array[String]) {
var map = scala.collection.mutable.Map[Int, String]()
map += (1->"Akash")
// adding multiple values.
map += (2->"Ram", 3->"Kiran")
println("The map created = "+map)
map(2) = "Raju"
println("The map after updating values = "+map)
}
}
输出结果
The map created = Map(2 -> Ram, 1 -> Akash, 3 -> Kiran)The map after updating values = Map(2 -> Raju, 1 -> Akash, 3 -> Kiran)
4)访问映射的任何特定值
Scala映射的任何值都可以使用其对应的键进行访问。
语法:
map_name.(key)
以上是 Scala 中的映射 的全部内容, 来源链接: utcz.com/z/326400.html