Map映射

(一)Map的定义和创建

Map 创建格式:

1.不可变 Map:val mapName: MapKeyType, ValueType = Map(key1 -> value1, key2 -> value2,...)

2.可变 Map(需导入scala.collection.mutable.Map):val mapName:

mutable.MapKeyType, ValueType = mutable.Map(key1 -> value2,...)

scala 复制代码
package map
/**
 * Map: 映射
 * 键值对,键不能有相同的!
 * (key, value)
 *
 * 豫 -> 湖北省
 * 湘 -> 湖南省
 * 赣 -> 江西省
 *
 * 01 -> xxx
 * 02 -> yyy
 */
object map01 {
  def main(args: Array[String]): Unit = {
    val map1 = Map("alice" -> 90, ("bob" -> 80), ("bob" -> 100))
    // bob这个键有重复,只保留一个
    println(map1)
  }
}

(二)Map 的常用方法

scala 复制代码
package map
object map01 {
  def main(args: Array[String]): Unit = {
    val map1 = scala.collection.mutable.Map(("alice" -> 90), ("bob" -> 80), ("bob" -> 100))
    // bob这个键有重复,只保留一个
    println(map1)
    // 1 添加
    map1 += ("judy" -> 90)
    // 2 删除
    map1 -= "bob"
    // 3 查询元素
    val key = "alice"
    val ret = map1.get(key)
    if (ret.isDefined) {
      println(s"${key} 对应的值是:${ret.get}")
    } else {
      println(s"${key} 不存在")
    }
    println(ret)
    // 4. for 循环输出所有
    for ((a, b) <- map1) {
      println(s"${a}, ${b}")
    }
    map1.foreach {
      case (key, value) => {
        println(s"${key}, ${value}")
      }
    }
  }
}
相关推荐
码爸2 天前
多源异构数据库实时同步至 Doris
数据库·flink·scala
dadaobusi10 天前
学习:chiesel,scala
学习·fpga开发·scala
深兰科技22 天前
深兰科技受邀参与第二届中国(南宁)—东盟人工智能场景应用对接会,深化AI国际合作
人工智能·qt·r语言·scala·symfony·智能机器人·深兰科技
开开心心就好1 个月前
低年级识字练笔顺工具,电脑和安卓端都能用
前端·javascript·网络·安全·scala·erlang·语音识别
开开心心就好1 个月前
清理此电脑网盘图标工具,开源免费好用
网络·网络协议·tcp/ip·智能手机·电脑·scala·erlang
典典分享指南1 个月前
用结构化数据管理产品知识库
scala·bash·batch·actionscript
Thomas21431 个月前
scala 闭包
开发语言·后端·scala
江畔柳前堤1 个月前
前台·中台·后台:2026年AI原生时代的架构全景图
开发语言·人工智能·算法·机器学习·架构·scala·ai-native
Thomas21431 个月前
Java scala 数组 链表
java·链表·scala
江畔柳前堤1 个月前
消息队列:从直觉到精通的完整认知地图
开发语言·人工智能·算法·机器学习·ruby on rails·scala