一、Map 的定义和创建
①.Map是一种存储键值对的数据结构,每个键在 Map 中是唯一的。
②.map:用来表示键值对格式,映射
在 Scala 中,我们可以使用多种方式创建 Map。
键值对:
- key + value 结构
代码:
def main(args: Array[String]): Unit = {
val map1 = scala.collection.mutable.Map((42 -> "湖北省"), (14 -> "山西省"))
println(map1)
}
运行结果:
在默认情况下,不写任何的导入语句和包名,Map是表示不可变的,他不能使用 += 的方式添加新的键值对
代码:
// 在每一个scala文件中,他都会自动导入一整个包
import scala.collection.mutable
// import scala.collection.immutable.Map
// 在默认情况下,不写任何的导入语句和包名,Map是表示不可变的,他不能使用 += 的方式添加新的键值对
object map01 {
def main(args: Array[String]): Unit = {
// val map1 = Map((42 -> "湖北省"), (14 -> "山西省"))
val map1 = mutable.Map((42 -> "湖北省"), (14 -> "山西省"))
// 添加一个元素
map1 += (19 -> "河南省")
println(map1)
}
}
运行结果:
二、常见键值对操作:
1. 添加
2. 删除
3. 查询:根据 key 找 value
4. 遍历
import scala.collection.mutable
object map02 {
def main(args: Array[String]): Unit = {
// val map1 = Map((42 -> "湖北省"), (14 -> "山西省"))
val map1 = mutable.Map((42 -> "湖北省"), (14 -> "山西省"))
// 1.添加一个元素
// val map2 = map1 + (19 -> "河南省")
map1 += (19 -> "河南省") // 含有"//" 符号的为一组
// 2. 删除:根据key值来删除
map1 -= 42
// 3. 14对应哪个省份
val ret = map1.get(14) // 如果有输出对应其省份,如果没有则输出空值
if(ret.isDefined) {
println(ret.get)
}
// 4. for 遍历
for((key, value) <- map1){
println(s"${value}身份证的前两位编号是${key}")
}
println(map1)
}
运行结果: