1、映射  Map

定义 ,取值,遍历,排序

2. 元组

定义,取值,拉链操作

import scala.collection.mutable

/**
* 映射和元组
*
* @author xwolf
* @date 2017-04-12 11:23
* @since 1.8
*/
object MapTest { def main(args: Array[String]): Unit = {
tuple()
} private def map(): Unit ={
//定义映射 ->对偶操作
var map =Map("id"->1,"name"->"王思琪",("age",10)) var twoMap = Map("detail"->"优秀屌丝","state"->0)
// += 添加K-V
map += ("birth"->"20160101")
//移除 key value
map -= "id"
//两个映射合并
val newMap = map ++ twoMap
println(newMap)
println(map("name"))//map取值
val name = if (map.contains("name1")) map("name") else None
println(name)
//映射遍历
for (elem <- map) {
println(elem)
} for((k,v)<-map){
println(k+","+v)
} val keys = map.keySet
for(k<-keys){
println("k="+k+",value="+map(k))
} // k v 互换 生成新的map
val kMap = for((k,v)<-map) yield (v,k)
println(kMap) //有序map 底层是java 的TreeMap
val sortMap= mutable.SortedMap("a"->1,"age"->122,"state"->0,"name"->"老王")
println(sortMap) } /**
* 元组操作
*/
def tuple(): Unit ={
//元组定义
val tuple =(1,2,12,4,15)
println(tuple)
println(tuple._3)//获取第三个元素,非下标
println(tuple _3)//获取第三个元素,非下标 val one = Array("Hello","Scala","Java")
val two =Array(1,2,3)
//拉链操作 将两个数组合并为Map
val ou =one.zip(two)
println(ou.toBuffer) } }

  

【scala】 scala 映射和元组操作(四)的更多相关文章

  1. Scala的映射和元组操作

    映射和元组操作 构造Map // 构造一个不可变的MAP映射,类似与key -> value这样的组合叫做对偶 val score = Map("Jack" -> 12 ...

  2. Scala:映射和元组

    映射是键值对偶的集合.Scala有一个通用的叫法——元组:n个对象的聚集,并不一定要相同的类型. 构造映射 键A -> 值B scala> val scores = Map()//不可变映 ...

  3. Scala学习(四)---映射和元组

    映射和元组 摘要: 一个经典的程序员名言是:"如果只能有一种数据结构,那就用哈希表吧".哈希表或者更笼统地说映射,是最灵活多变的数据结构之一.映射是键/值对偶的集合.Scala有一个通用的叫法:元组, ...

  4. 快学Scala习题解答—第四章 映射和元组

    4 映射和元组  4.1 设置一个映射,当中包括你想要的一些装备,以及它们的价格.然后构建还有一个映射.採用同一组键,可是价格上打9折 映射的简单操作  ,"gun"->18 ...

  5. Scala从入门到精通之四-映射和元组

    在Scala中映射之键值对的集合,元组是n个对象的聚集,但是对象的类型不一定相同 本节内容要点 Scala中映射的创建,遍历和查询 如何从可变和不可变映射中做出选择 Scala映射和Java映射见的互 ...

  6. 《快学Scala》——数组、映射和元组

    数组 定长数组:在Scala中可以用Array,初始化一个定长数组.例如: val nums = new Array[Int](10) //10个整数的数组,所有元素初始化为0 val a = new ...

  7. Scala从入门到放弃(三)Scala的数组、映射、元组和集合

    1.数组 1.1定长数组和变长数组 object ArrayDemo { def main(args: Array[String]): Unit = { //初始化一个长度为8的定长数组,其数组元素均 ...

  8. 学好Spark/Kafka必须要掌握的Scala技术点(一)变量、表达式、循环、Option、方法和函数,数组、映射、元组、集合

    前言 Scala是以JVM为运行环境的面向对象的函数式编程语言,它可以直接访问Java类库并且与Java框架进行交互操作.正如之前所介绍,Spark是用Scala语言编写的,Kafka server端 ...

  9. 快学Scala-第四章 映射和元组

    知识点: 1.构造映射,映射是对偶的集合 val scores1 = Map("Alice" -> 10, "Bob" -> 7, "Ci ...

随机推荐

  1. 在Word 2007中添加参考文献及其引用的方法

    以前写文章的时候忽略了在文章中添加参考文献及其引用的方式,文章各式显得不太正式,在网上进行了相关搜索,将方法整理如下: 1.将光标停留在需要插入文献的地方[1],选择菜单栏上的"引用 -&g ...

  2. textbox 控制输入整数,小数

    /// <summary> /// keypress事件控制输入 /// </summary> /// <param name="sender"> ...

  3. python计算机视觉项目实践

    这是一个贝叶斯模型的计算机视觉小项目.希望大家通过这个简单的项目知道一般的计算机视觉项目是怎样操作的. 我先讲题目放在这里希望有兴趣的童鞋花一周的时间思考并用python实现.一周以后我来发布我的详细 ...

  4. 对比几种在ROS中常用的几种SLAM算法

    在此因为要总结写一个文档,所以查阅资料,将总结的内容记录下来,欢迎大家指正! 文章将介绍使用的基于机器人操作系统(ROS)框架工作的SLAM算法. 在ROS中提供的五种基于2D激光的SLAM算法分别是 ...

  5. PCL的PNG文件和计算点云重心

    PCL提供节约一点云的值为一个PNG图像文件的可能方案.显然,这只能用有序的点云来完成,因为生成的图像的行和列将与点云的对应完全一致.例如,如果你从一个传感器Kinect或Xtion的点云,你可以用这 ...

  6. R语言-查看加载包、卸除加载包及安装包与卸载包

    在R语言中,常需要看哪个包加载了或是看多个相似功能的包,看到底是哪个包在起作用,通过加载和卸除后进行运行比较分析. 1.查看已加载的包 >(.packages()) 注意外面的括号和前面的点不能 ...

  7. A SIMPLE LIBRARY TO BUILD A DEEP ZOOM IMAGE

    My current project requires a lot of work with Deep Zoom images. We recently received some very high ...

  8. Python中sorted()方法的用法

    Python中sorted()方法的用法 2012-12-24 22:01:14|  分类: Python |字号 订阅 1.先说一下iterable,中文意思是迭代器. Python的帮助文档中对i ...

  9. MongoDB C Driver Building on CentOS

    Building on Unix Prerequisites OpenSSL is required for authentication or for SSL connections to Mong ...

  10. 一个简单的perl程序

    和朋友聊天,说perl的神奇,最主要的是一行代码搞定所有. 想想用python3写的测试脚本,觉得还是有点多的,真的用几行代码写一个测试脚本,可以节约不少时间. 当然,网上黑perl的还是很多,不过自 ...