Scala学习---映射和元祖
1.设置一个映射,其中包含你想要的一些装备,以及他们的价格。然后构建另一个映射,采用同一组键,但在价格上打9折。
scala> val map = Map("a"->100.0, "b"->200.0, "c"->300.0)
map: scala.collection.immutable.Map[String,Double] = Map(a -> 100.0, b -> 200.0, c -> 300.0)
scala> val newMap = for ((k,v) <- map) yield (k, (v * 0.9))
newMap: scala.collection.immutable.Map[String,Double] = Map(a -> 90.0, b -> 180.0, c -> 270.0)
2.编写一段程序,从文件中读取单词。用一个可变映射来清点每一个单词出现的频率。
import scala.collection.mutable.HashMap
import scala.io.Source /**
* Created by vito on 2017/1/12.
*/
object ex6 {
def main(args: Array[String]): Unit = { val fileMap = Source.fromFile("201508_T_MW_TERMINAL_DATA_STA.csv").getLines().flatMap(_.split(",")).map(_.toString.trim) //注意,这里的newMap必须为mutable类型的
val newMap = new HashMap[String, Int] for (key <- fileMap) {
newMap(key) = newMap.getOrElse(key, 0) + 1
} newMap.foreach(println(_)) }
}
Scala学习---映射和元祖的更多相关文章
- python学习笔记之元祖
#元祖 只读列表,可循环查询,可切片.#儿子不能改,孙子可能可以改. tu = (1,2,3,'alex',[2,3,4,'taibai'],'egon') print(tu[3]) print(tu ...
- python学习-字符串 列表 元祖
目录 Python翻转字符串(reverse string) 简单的步长为-1, 即字符串的翻转(常用) 递归反转 借用列表,使用reverse()方法 字符串常用操作 index split 切片 ...
- python学习之列表,元祖,字典
python基础 列表 [ ] stats =[1,2,3,4,5] 元素1,2,3,4,5 下标,索引,角标,初始从0开始 增加 stats.append(7)#append方法添加 stats. ...
- Scala学习 —— 元组&映射
再说集合之前,我们先来回顾一下映射&元祖 映射是键/值对偶的集合,Scala有一个通用的叫法--元组,也就是n个对象的聚集,并不一定要相同类型的.对偶不过是一个n=2的元祖.元祖对于那种需要将 ...
- 【Scala篇】--Scala中集合数组,list,set,map,元祖
一.前述 Scala在常用的集合的类别有数组,List,Set,Map,元祖. 二.具体实现 数组 1.创建数组 new Array[Int](10) 赋值:arr(0) = xxx Array[ ...
- Scala学习四——映射和数组
一.本章要点 Scala有十分易用的语言来创建,查询和遍历映射 你需要从可变和不可变的映射中做出选择 默认情况下,你得到的是一个哈希映射,不过你也可以指明要树形映射 你可以很容易地在Scala映射和J ...
- 【Python基础学习五】列表,元祖,字典
1.列表(list) 列表是Python的一种内置数据类型,list是一种有序的集合,可以随时添加和删除其中的元素,就像动态数组一样.获取list中的元素用角标获取,角标可以使用正角标,也可以使用负角 ...
- python基础学习笔记第四天 list 元祖 字典
一 LIST方法 列表操作包含以下函数:1.cmp(list1, list2):比较两个列表的元素 2.len(list):列表元素个数 3.max(list):返回列表元素最大值 4.min(lis ...
- python学习第八讲,python中的数据类型,列表,元祖,字典,之字典使用与介绍
目录 python学习第八讲,python中的数据类型,列表,元祖,字典,之字典使用与介绍.md 一丶字典 1.字典的定义 2.字典的使用. 3.字典的常用方法. python学习第八讲,python ...
随机推荐
- 克隆虚拟机win8系统后注意修改安全标识(SID)
克隆虚拟机win8系统后注意修改安全标识(SID) 克隆虚拟机系统后两个系统硬件配置一样,需要注意修改:security ID ,MAC,计算机名,IP地址,产品激活 重置工具:sysprep.e ...
- java基础练习 11
import java.util.Scanner; public class Eleventh { /*给一个不多于5位的正整数,要求:一.求它是几位数,二.逆序打印出各位数字. (5 分数)*/ p ...
- Angular2中的Service并不是单例模式
2015年做了一个使用angularjs 1框架的项目,2016年伊始公司的项目转为使用Angular2框架. 在开发过程中发现了一个坑,这个坑就是在Angular JS 1.x中的Service是单 ...
- Docker集群实验环境布署--swarm【1 架构说明】
在读完<Docker技术入门与实践>这本书后,基本上已对Docker了有一些入门的理解,以及我们为什么要使用Docker 答:我们发现在实际工作中,通过openstack一旦把一个VM创建 ...
- Nginx 防止被域名恶意解析的方法
今天太倒霉了,发现通过IP无法访问服务器的80端口很无语,昨天都还好的啊,也没有修改过配置,其他端口又是正常的,防火墙也没问题.于是问了下机房,给了个崩溃的回复说我们的服务器有个域名没有备案被电信多次 ...
- 《DSP using MATLAB》示例 Example 6.5
代码: b = [1, 0, 0, 0, 16+1/16, 0, 0, 0, 1]; broots = roots(b) B1 = real(poly([broots(1), broots(2), b ...
- JSON 与 对象 、集合 之间的转换
JSON字符串和java对象的互转[json-lib] 在开发过程中,经常需要和别的系统交换数据,数据交换的格式有XML.JSON等,JSON作为一个轻量级的数据格式比xml效率要高,XML需要很 ...
- List转换为DataTable
public static DataTable ListToDataTable(IList list) { DataTable result = new DataTable(); if (list.C ...
- windows下后台运行程序
方法一:使用vbs启动,新建一个vbs脚本,内容如下: set ws=WScript.CreateObject("WScript.Shell") ws.Run 方法二:将程序注册成 ...
- 本地存储 cookie,session,localstorage( 二)angular-local-storage
原文:https://github.com/grevory/angular-local-storage#api-documentation Get Started (1)Bower: $ bower ...