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. tomcat添加context方式部署web应用

    刚巧碰到了,记录一下. 通过context的方式部署会灵活一点,不必一定指向tomcat里面的webapps目录 这种部署有几种方式: 1.在$CATALINA_BASE/conf/ server.x ...

  2. Spring Cloud Config 配置中心 自动加解密功能 JCE方式

    1.首先安装JCE JDK8的下载地址: http://www.oracle.com/technetwork/java/javase/downloads/jce8-download-2133166.h ...

  3. druid的配置

    //----------------------------pom.xml-------------------------------- <!-- druid --> <depen ...

  4. 微信小程序的json遍历

    入门教程之列表渲染多层嵌套循环,目前官方的文档里,主要是一维数组列表渲染的案例,还是比较简单单一,给刚入门的童鞋还是无从入手的感觉. <view wx:for="{{items}}&q ...

  5. [hadoop读书笔记]前言

    hadoop2.0+主要变化: 全新的MapReduce 2,它建立在一个新的分布式资源管理系统之上,该系统称之为YARN. YARN:分布式资源管理系统

  6. apt-get 命令加 autoclean clean autoremove 区别

    下面总结一下有关apt-get的常用但容易混淆的指令: apt-get autoclean:   www.2cto.com       如果你的硬盘空间不大的话,可以定期运行这个程序,将已经删除了的软 ...

  7. Mac使用git/github小结

    介绍 git 版本控制系统 相比CVS\SVN优势: - 支持离线开发,离线Repository- 强大的分支功能,适合多个独立开发者协作- 速度快 2. github是一个git项目托管网站 注册地 ...

  8. Numpy的array数组和标量之间的运算

    矢量化 数组很重要,因为它使你不用编写循环即可对数据执行批量运算.这通常就叫做矢量化(vectorzation) 数组与数组的运算 数组与标量的算术运算

  9. applicationContext.xml报错org.springframework.orm.hibernate3.LocalSessionFactoryBean not found

    applicationContext.xml报错org.springframework.orm.hibernate3.LocalSessionFactoryBean not found 解决办法: 1 ...

  10. freetds 移植

    移植freetds主要是为了能够在linux下,使用C语言访问微软的sqlserver数据库. 参考连接 http://blog.csdn.net/neighbor1000/article/detai ...