Scala坑四(映射和元组)

原创 2015年11月18日 14:06:54

1.摘要

创建、查询和遍历映射都有十分易用的语法

要从可变和不可变的映射中选择

默认情况下得到的是一个哈希映射,不过可以指明要树形映射

可以再Scala映射和Java映射之间来回切换

元组可以用来聚集值

2.构造映射

映射是对偶的集合,即两个值构成的组

不变映射

val s = Map("A" -> 10, "b" -> 12, "c" ->  13) 一个不可变的Map[String,Int]

一个空的映射

val s = new scala.collection.mutale.HashMap[String,Int]

3.获取映射中的值

返回的是一个Option类

val b = s("b")

如果没有值就会抛出异常

val b = s.getOrElse("b",0) 没有值就返回0

4.更新映射中的值

s("b") = 23

若是可变的map 使用 s("d") = 98 增加新的对偶

s += ("b" -> 32,"c" -> 43)

移除  s -= “a”

5.迭代映射

for( ( k, v ) <- 映射)

s.keysSet 得到的是 set("a","b","v")的集合

for(v <- s.values) println(v) 输出的是map里面的value

for( ( k, v )<- 映射) yieid ( v , k ) 翻转映射

6.元组

元组下标从1开始

映射是键/值对偶集合,对偶是元组的最简单形态 , 元组是不同类型的值得聚集

如 val t =(1,2.1, "haha") Tuple3[Int,Double,Java.lang,String]

用 ._1  ._2来访问元组

val second = t._1

使用匹配模式来获取元组的组元   val (first,second,thrid) = t

7.拉链操作

把多个值绑在一起,一起处理,用zip方法完成

val sys = Array("<","-",">")

val counts = Array(2,10,2)

var pairs = sys.zip(counts)得到 Array(("<",2), ("-",10),(">",2))






版权声明:本文为博主原创文章,未经博主允许不得转载。

Scala中常见的容器 元组 Tuple

与列表一样,元组也是不可变的,但与列表不同的是元组可以包含不同类型的元素。 元组的值是通过将单个的值包含在圆括号中构成的。例如: val t = (1, 3.14, "Fred") 以上实例在...
  • Winterto1990
  • Winterto1990
  • 2016年08月03日 17:21
  • 2194

Scala详解---------数组、元组、映射

一、数组 1、定长数组 声明数组的两种形式: 声明指定长度的数组 val 数组名= new Array[类型](数组长度)    提供数组初始值的数组,无需new关键字  ...
  • u011225629
  • u011225629
  • 2015年07月26日 10:17
  • 2920

Scala中元组Tuples的使用

Scala代码: package org.yla.chapter01 /*scala中元组Tuples的使用*/ object TuplesDemo { def main(args:...
  • hblfyla
  • hblfyla
  • 2017年04月13日 13:58
  • 1582

Scala映射和元组

映射 import scala.collection.mutable object HelloWorld { def main(args: Array[String]) { val sco...
  • shijiebei2009
  • shijiebei2009
  • 2014年08月18日 15:36
  • 3814

Scala学习笔记02【数组、列表、元组、集合和映射】

1、使用类型参数化数组【Array】Scala使用new实例化对象或类实例。 当在Scala里实例化对象,可以使用值和类型把它参数化:parameterize。 参数化的意思是在你创建实例的时候”...
  • y396397735
  • y396397735
  • 2015年10月02日 18:23
  • 1012

Scala元组和映射

1、map映射import scala.collection.mutable._//如果要定义一个map为可变的需要导入mutable包 object helloworld { d...
  • xiaoqiu_cr
  • xiaoqiu_cr
  • 2017年11月17日 17:17
  • 56

Scala教程(三)数组、元组、列表

Scala教程(三)数组、元组、列表 Tuple(元组)结合多个固定元素数量在一起,使它们可以被传来传去作为一个整体。不像一个数组或列表,元组可以容纳不同类型的对象。元组的访问元素的索引是从1开始,...
  • yuan_xw
  • yuan_xw
  • 2015年09月20日 11:55
  • 1798

scala映射和元组

scala映射和元组 1.构造映射 //构造一个不可变映射 val myMap = Map("key1" -> "val1", "key2" -> "val2","key3" ->"val3") ...
  • caiandyong
  • caiandyong
  • 2016年07月22日 11:09
  • 412

Spark学习使用笔记 - Scala篇(3)- 映射,元组

映射: def constructMap = { //构造一个不可变Map[String Int] val scores = Map("Alice" -> 10, "aaa" -...
  • zhxdick
  • zhxdick
  • 2016年07月29日 15:05
  • 1877

Scala 映射和元组

摘自《快学Scala》0.重点 Scala 有十分易用的语法来创建,查询和遍历映射 需要从可变和不可变的映射中做出选择...
  • power0405hf
  • power0405hf
  • 2015年12月04日 13:57
  • 366
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Scala坑四(映射和元组)
举报原因:
原因补充:

(最多只允许输入30个字)