1. 映射

在Scala中,把哈希表这种数据结构叫做映射

1.1. 构建映射

1.2. 获取和修改映射中的值


好用的getOrElse

注意:在Scala中,有两种Map,一个是immutable包下的Map,该Map中的内容不可变;另一个是mutable包下的Map,该Map中的内容可变
例子:

注意:通常我们在创建一个集合是会用val这个关键字修饰一个变量(相当于java中的final),那么就意味着该变量的引用不可变,该引用中的内容是不是可变,取决于这个引用指向的集合的类型

代码示例:
3. Map

package cn.toto.scalaimport scala.collection.mutable/*** Created by toto on 2017/6/28.*/
object MutMapDemo {def main(args: Array[String]): Unit = {val map1 = new mutable.HashMap[String,Int]();//向map中添加数据map1("spark") = 1map1 += (("hadoop",2))map1.put("storm",3)println(map1)//从map中移除元素map1 -= "spark"map1.remove("hadoop")println(map1)}
}

运行后的结果如下:

Map(hadoop -> 2, spark -> 1, storm -> 3)
Map(storm -> 3)

Scala中映射的语法(对应Java中的Map集合的定义)相关推荐

  1. java 删除二维数组中的null_避免在Java中检查Null语句

    1.概述 通常,在Java代码中处理null变量.引用和集合很棘手.它们不仅难以识别,而且处理起来也很复杂.事实上,在编译时无法识别处理null的任何错误,会导致运行时NullPointerExcep ...

  2. Java中的字符集编码入门Java中的增补字符

    转载自:http://jiangzhengjun.iteye.com/blog/512083 Java中的字符集编码入门Java中的增补字符 博客分类: 字符集编码 Java Java号称对Unico ...

  3. java的 x跟x_关于语法:java中的x ++和++ x有区别吗?

    java中的++ x和x ++有区别吗? 提示大量相同的答案...... ...并提出第一个完全相同的答案... 最快的去战利品,按最旧排序,点击upvote.ohowoho. 我确信我有它! 无论如 ...

  4. lambda表达式语法_使用类似Lambda的语法作为Java中的表达式进行切换

    lambda表达式语法 从Java 14开始, switch表达式具有其他Lambda式 ( case ... -> labels )语法,它不仅可以用作语句,还可以用作计算为单个值的表达式. ...

  5. java 中的枚举_说说Java中的枚举(一)

    在实际编程中,往往存在着这样的"数据集",它们的数值在程序中是稳定的,而且"数据集"中的元素是有限的.例如星期一到星期日七个数据元素组成了一周的"数据 ...

  6. java中static关键字的作用(java中static关键字的作用)

    关键字static的作用是什么? 在Java语言中,static表示"全局"或者"静态"的意思,用来修饰成员变量和成员方法,也可以形成静态static代码块,但 ...

  7. java中super用来定义父类,Java中super的几种用法及与this的区别

    综观目前的 Web 应用,多数应用都具备任务调度的功能.本文由浅入深介绍了几种任务调度的 Java 实现方法,包括 Timer,Scheduler, Quartz 以及 JCron Tab,并对其优缺 ...

  8. 不属于JAVA类中的变量_在Java中,不属于整数类型变量的是( )。_学小易找答案...

    [单选题]整型数据类型中,需要内存空间最少的是( ). [单选题]下列语句序列执行后,i的值是( ). int i=16; do { i/=2; } while( i > 3 ); [填空题]布 ...

  9. Java方法调用事件_Java中的事件处理和Java中actionPerformed方法的执行

    我在Java中为simpleGUI编写了一个小代码. package guidemo1; import java.awt.event.ActionEvent; import java.awt.even ...

最新文章

  1. mysql多列索引用处_MySQL索引使用说明(单列索引和多列索引)
  2. adapter为null_软件设计精要之——适配器(Adapter)模式
  3. oracle笔试题目及答案,Oracle 笔试题目带答案.doc
  4. HUE Load Balancer 启动失败
  5. python课程设计矩阵对角线之和,为每个python numpy用不同的值填充矩阵对角线
  6. Qt实现全屏下玫瑰花(含详细注释)
  7. [ NOI 2005 ] 聪聪与可可
  8. 微型计算机控制技术小论文,微型计算机控制技术结课论文..doc
  9. 注册.ocx控件时,提示“模块已加载,但对dllregisterserver的调用失败,错误代码为0x80040200 ”
  10. 帝国cms二次开发应用
  11. 无限循环滚动代码阿里巴巴国际站店铺装修代码底图滚动黑色半透明显示效果自定义内容装修代码全屏显示
  12. 彻底解决联想手机数据连接不能上网问题(无需恢复出厂设置) 本文来自移动叔叔论坛 ,详细出处请参考:http://bbs.ydss.cn/thread-201115-1-1.html
  13. Windows11自带壁纸位置
  14. 程序员的双肩包,大概能装下整个宇宙!
  15. 转如何管理好开源软件社区:开源项目管理方法
  16. 【UFUN开发板评测】小巧而不失精致,简单而不失内涵——uFun开发板开箱爆照...
  17. 思科下一代数据中心Nexus7000优势
  18. mybatis一级缓存、二级缓存以及集成EnCache、Redis,避免脏读
  19. oracle AWR 报告 中文版
  20. 给 iOS 开发者的 Flutter 指南(上)

热门文章

  1. Python可视化中的Matplotlib(6.散点图以及详细参数、为图形添加文字、注释、箭头以及它们的参数)
  2. 离散蚁群算法实例(求解旅行商问题)
  3. OpenCASCADE: CMake 工具构建OCCT
  4. boost::range_mutable_iterator相关的测试程序
  5. boost::intrusive::list用法的测试程序
  6. boost::log::sinks::syslog用法的测试程序
  7. boost::hana::is_empty用法的测试程序
  8. boost::hana::take_while用法的测试程序
  9. boost::gregorian模块实现使用公历精确地推进一个月的测试程序
  10. boost::core模块实现constexpr的地址