Map 的定义和创建
定义:Map是一种存储键值对的数据结构,每个键在 Map 中是唯一的。在 Scala 中,我们可以使用多种方式创建 Map。
代码示范:
package map
/**
* 42→湖北省
* 14→山西省
*
* 鄂A→武汉
* 鄂N→潜江
*
*
* map:(020->)
* 键值对
* key → value 结构
*
* map: 用来表示键值对格式
*/
object map01 {
def main(args: Array[String]): Unit = {
val map1=scala.collection.mutable.Map((42->"湖北省"),(14->"山西省"))
println(map1)
}
}
Map 创建格式:
1.不可变 Map:val mapName: Map[KeyType, ValueType] = Map(key1 -> value1, key2 -> value2,...)
2.可变 Map(需导入scala.collection.mutable.Map):val mapName:
mutable.Map[KeyType, ValueType] = mutable.Map(key1 -> value2,...)
代码示范:
package map
/**
* 42→湖北省
* 14→山西省
*
* 鄂A→武汉
* 鄂N→潜江
*
*
* map:(020->)
* 键值对
* key → value 结构
*
* map: 用来表示键值对格式
*/
// 在每一个scala文件中,它都会自动导入一些包!
import scala.collection.mutable
// import scala.collection.immutable.Map
// 默认情况下,不写任何的导入语句和包名,Map是表示不可变的,它不能使用 += 的方式添加新的键值对
object map02 {
def main(args: Array[String]): Unit = {
//
//val map1=Map((42->"湖北省"),(14->"山西省"))
val map1=mutable.Map((42->"湖北省"),(14->"山西省"))
// 添加一个元素
map1 +=(19->"河南省")
println(map1)
}
}
Map 的常用方法
1. 添加键值对
对于可变 Map,我们可以使用 += 操作符或者 put 方法来添加键值对。
对于不可变 Map,由于其不可修改的特性,我们需要创建一个新的 Map 来包 含新的元素。
2. 删除
删除可变 Map 元素的格式(-= 操作符): mapName -= key
删除可变 Map 元素的格式(remove 方法): mapName.remove(key)
3. 查询:根据key去找value
我们可以使用 get 方法来查询 Map 中的值,或者直接Map(key)。
查询 Map 元素的格式(get 方法):
4. 遍历
我们可以使用 for 循环或者 foreach 方法来遍历 Map。
代码示范:
package map
/**
* 常见操作:
* 1. 添加键值对
* 2. 删除
* 3. 查询:根据key去找value
* 4. 遍历
* map: 用来表示键值对格式
*/
import scala.collection.mutable
// import scala.collection.immutable.Map
// 默认情况下,不写任何的导入语句和包名,Map是表示不可变的,它不能使用 += 的方式添加新的键值对
object map03 {
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)// 如果找到了,就有值!没有找到就是None
if(ret.isDefined){
println(ret.get)
}
println(map1)
// 4. for遍历
for((key, value) <-map1){
println(s"${value}身份证的前两位编号是${key}")
}
}
}