scala map的常用操作
package cn.scala_base /**
* map常用操作
*/
object Map { def main(args: Array[String]): Unit = { //1.不可变map(有序)
val map1 = scala.collection.immutable.Map("wyc"->30,"tele"->20,"yeye"->100,"haha"->1000);
println(map1("wyc"));
println("map1---" + map1); //error
// map1("wyc")=100; //2. 可变map
val map2 = scala.collection.mutable.Map("wyc"->30,"tele"->20,"yeye"->100);
map2("wyc")=10000;
println(map2("wyc")); val map3 = scala.collection.mutable.Map(("wyc",100),("tele",1000),("yeye",10000));
println(map3("wyc")); //3.创建HashMap(无序)
val hashMap = new scala.collection.mutable.HashMap[String,Int]; //为map增加元素
hashMap += ("wyc"->1);
println(hashMap("wyc")) //移除元素
hashMap -= "wyc"; //检查key是否存在
if(hashMap.contains("wyc")) println(hashMap("wyc")) else println(0); //使用getOrElse进行检查
println(hashMap.getOrElse("wyc","不存在")); //根据key进行排序的SortedMap,注意是immutable
val sortedMap = scala.collection.immutable.SortedMap("wyc"->100,"tele"->1000);
println("sortedMap----" + sortedMap); //有序的LinkedHashMap
val linkedHashMap = scala.collection.mutable.LinkedHashMap("wyc"->100,"tele"->1000);
println("linkedHashMap----" + linkedHashMap); //对于不可变的map1进行更新,其实是返回新的不可变map
val mapX = map1 + ("newEntry"->1);
val mapY = map1 - "wyc"; //遍历Map
for((key,value)<- map3) {
println(key + ":" + value);
} for(key <- map3.keySet) {
println(key + ":" + map3(key));
} //只遍历values
/*for(value<-map3.values) {
println(value);
}*/ //反转key与value
val reverseMap = for((key,value)<-map3) yield (value,key);
for(key<- reverseMap.keySet) {
println(key + ":" + reverseMap(key));
} } }
scala map的常用操作的更多相关文章
- Map的常用操作
public static void main(String[] args) { Map<String, String> map = new HashMap<>(); map. ...
- 快学Scala 第三课 (定长数组,变长数组, 数组循环, 数组转换, 数组常用操作)
定长数组定义: val ar = new Array[Int](10) val arr = Array("aa", "bb") 定长数组赋值: arr(0) = ...
- Java Map常用操作
Java之map常用操作 package basic; import java.util.HashMap; import java.util.Map; /** *Map常用操作方法 */ public ...
- scala - Map基础
Map 构造Map 不可变: val map = Map("sa" -> 1, "s" -> 2)map("sa") = 3 / ...
- mongodb的常用操作
对于nosql之前工作中有用到bekerlydb,最近开始了解mongodb,先简单写下mongodb的一些常用操作,当是个总结: 1.mongodb使用数据库(database)和集合(collec ...
- js,jQuery数组常用操作小结
一.js中数组常用操作小结 (1) shift:删除原数组第一项,并返回删除元素的值:如果数组为空则返回undefined var a = [1,2,3,4,5]; var b = a.shift() ...
- Scala基础类型与操作
Scala基本类型及操作.程序控制结构 Scala基本类型及操作.程序控制结构 (一)Scala语言优势 自身语言特点: 纯面向对象编程的语言 函数式编程语言 函数式编程语言语言应该支持以下特性: 高 ...
- ArcGIS中的坐标系:基本概念和常用操作(一)
本文呢是主要是借鉴李郎平李大大的博士论文和百度百科,里面还有一点点我自己的理解,希望能帮助自己加深对于坐标系的认识. 李大大的博客:http://blog.sciencenet.cn/u/Brume ...
- Hadoop2.7.6_02_HDFS常用操作
1. HDFS常用操作 1.1. 查询 1.1.1. 浏览器查询 1.1.2. 命令行查询 [yun@mini04 bin]$ hadoop fs -ls / 1.2. 上传文件 [yun@mini ...
随机推荐
- 展示C代码覆盖率的gcovr工具简单介绍及相关命令使用演示样例
(本人正在參加2015博客之星评选,诚邀你来投票,谢谢:username=zhouzxi">http://vote.blog.csdn.net/blogstar2015/candida ...
- 常用加密算法的Java实现总结(二)
常用加密算法的Java实现总结(二) ——对称加密算法DES.3DES和AES 摘自:http://www.blogjava.net/amigoxie/archive/2014/07/06/41550 ...
- javascript的组成
ECMAScript:(3/5/6/7) 它是JS语言的标准,规定了JS的编程语法和基础核心知识. DOM:document object model 文档对象模型,提供给JS很多的操作页面中元素的属 ...
- SQL Server2008 Hierarchyid数据类型
以往我们在关系数据库中建立树状结构的时候,通常使用ID+ParentID来实现两条 纪录间的父子关系.但这种方式只能标示其相对位置.解决这类问题在SqlServer2005出现之前通常是采用游标来操作 ...
- [Angular] Intercept HTTP requests in Angular
Being able to intercept HTTP requests is crucial in a real world application. Whether it is for erro ...
- 关于android的2.2与4.4的文件读取的一点发现
好久没有写文章了,本来想写的东西,时间一长,就感觉不想写了.没什么用,到用时.又不知道去哪找了或怎么解决. 有一句话说的好啊,好记性不如烂笔头. 我要做到善于总结.及时整理,额............ ...
- 1 Spring Cloud Eureka服务治理(上)
注:此随笔为读书笔记.<Spring Cloud微服务实战>,想学习Spring Cloud的同伴们可以去看看此书,里面对源码有详细的解读. 什么是微服务? 微服务是将一个原本独立的系统拆 ...
- 又在折腾cygwin
apt-cyg https://github.com/transcode-open/apt-cyg/blob/master/README.md cygwin 163镜像 http://mirrors. ...
- 11、V4L2摄像头获取单幅图片测试程序
#根据网上常见的一个测试程序修改而来 by rockie cheng#include <stdio.h>#include <stdlib.h>#include <stri ...
- [CSS] Manipulate Images Using CSS Filter and Blend Modes
Apply filters like blur, brightness, saturation and hue to images. Combined with CSS blend modes, yo ...