惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

WordPress大学
WordPress大学
阮一峰的网络日志
阮一峰的网络日志
Jina AI
Jina AI
博客园 - Franky
U
Unit 42
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
宝玉的分享
宝玉的分享
B
Blog RSS Feed
雷峰网
雷峰网
D
DataBreaches.Net
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
I
InfoQ
美团技术团队
云风的 BLOG
云风的 BLOG
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
Martin Fowler
Martin Fowler
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
大猫的无限游戏
大猫的无限游戏
G
Google Developers Blog
T
Tailwind CSS Blog
P
Proofpoint News Feed
The GitHub Blog
The GitHub Blog
月光博客
月光博客
Engineering at Meta
Engineering at Meta

博客园 - cindy_zl

SAP SD销售与分销模块 Agent认知框架ReAct&Plan RAG系统优化 RAG检索优化 RAG架构 SAA-C02-架构师助理级-英文版-Q1 scala-数组 navicat mysql创建存储过程报错 安装完kali出现中文乱码 Spark SQL是处理结构化的数据 SPARK SQL ERROR: Detected cartesian product for INNER join between logical plans报错解决方法 scala的lazy关键字 scala集合三大类(seq序列,set集,map映射)——map映射 scala集合三大类(seq序列,set集,map映射)——set集合 scala集合三大类(seq序列,set集,map映射)——list序列 scala元组及拉链操作 scala数组 scala方法和涵数的声明以及方法转换成涵数 scala的基础数据类型&if条件表达式&for循环
scala的map映射
cindy_zl · 2019-09-17 · via 博客园 - cindy_zl

scala的map映射:

scala> val map1 = Map("scala"->1, "java"->2,"python"->3)             //定义map方法一,都是调用其静态方法

map1: scala.collection.immutable.Map[String,Int] = Map(scala -> 1, java -> 2, python -> 3)

scala> val map2 = Map(("scala",1),("java",2),("python",3))                //定义map方法二,都是调用其静态方法

map2: scala.collection.immutable.Map[String,Int] = Map(scala -> 1, java -> 2, python -> 3)

scala> map1("scala")               //取键为scala对应的内容

res39: Int = 1

scala> map1("scala") = 5   //默认是不可变的,需要导入包才可改map里面对key值对应的内容

       ^

       error: value update is not a member of scala.collection.immutable.Map[String,Int]

       did you mean updated?

scala> import scala.collection.mutable._

import scala.collection.mutable._

scala> val map1 = Map("scala"->1, "java"->2,"python"->3)   //导包后要重新定义,因为是没导包前定义的,默认为不可变的,所以需要在导包后定义的才是变长map

map1: scala.collection.mutable.Map[String,Int] = HashMap(python -> 3, java -> 2, scala -> 1)

scala> map1("scala") = 5 //更改键是scala的对应内容  ,val 修饰的是变量引用不可变,现在这个修改的是变量引用对应的内容。

scala> map1("scala")

res43: Int = 5

scala> map1.getOrElse("C#",-1)       //取键为“c#", 如若映射里面没有此键时会报错,常使用方法getOrElse(键值,没有时返回-1)

res44: Int = -1