注重体验与质量的电子书资源下载网站
分类于: 编程语言 计算机基础 互联网 云计算&大数据
简介
Scala集合技术手册 豆 0.0分
资源最后更新于 2020-03-29 00:59:40
作者:晁岳攀
出版社:出版社电子工业出版社
出版日期:2016-06
ISBN:9787121287763
文件格式: pdf
简介· · · · · ·
《Scala集合技术手册》是一本全面介绍Scala集合框架的图书,它基于最新的Scala 2.11编写,深入全面地介绍了Scala集合框架的集合类和方法,通过图例、代码示例、表格等多种方式多方位地介绍集合类的方法和实现,并且对相关的类型的性能进行分析和比较,总结了各个集合类的特点,帮助读者快速地掌握Scala集合框架,并且可以作为日常Scala开发的参考书。《Scala集合技术手册》适合架构师、软件开发工程师、测试人员以及其他对Scala集合感兴趣的相关人员阅读。晁岳攀,现任Comcast VIPER部门项目经理。16年的软件开发经验,先后在清华同方、Motorola等公司从事智能建筑、视频服务器等系统的开发工作,用过多年的高性能软件架构设计和开发经验。
目录
推荐序
序
第1章 Scala集合库简介
Scala编程语言
Scala集合
谁应该阅读此书
为什么写这本书
印刷体变化
内容概要
第2章 Traversable
初始化Traversable对象
集合的静态类型和类型擦除
对Traversable实例中每个元素执行操作(foreach)
平展一个Traversable实例
转置Traversable集合(transpose)
unzip一个Traversable
连接两个Traversable到一个新的Traversable
连接多个Traversable对象到一个新的Traversable
利用偏函数筛选元素
对所有的元素应用一个函数,并将结果放入一个新的Traversable对象中
利用scan计算Traversable元素的阶乘
使用指定的函数折叠Traversable的元素
判断一个Traversable非空
得到Traversable对象的特定的元素
得到Traversable对象的尾部
选择Traversable的一段子集
选取Traversable对象的前N个元素
跳过开头的前N个元素,选择剩余的元素
根据条件筛选元素
给Traversable对象的元素分组
检查Traversable对象中的元素是否满足条件
统计满足断言的元素个数
归约操作
在Traversable对象上调用聚合函数
基于Traversable对象生成字符串
集合类型转换
复制元素到一个数组
返回一个Traversable对象的视图view
得到Traversable对象的底层实现
使用一个相同的元素填充元素
在某个值域上生成指定间隔的队列
tabulate
生成空的Traversable对象
得到Traversable对象的串行对象和并行对象
第3章 Iterable
将Iterable对象分组
以滑动窗口的方式分组Iterable对象
zip两个集合
zipAll两个长度不同的集合
使用本身的索引zip一个Iterable集合
检查两个Iterables是否包含相同的元素
得到尾部的N个元素
去掉尾部的N个元素
第4章 Seq
得到序列的索引集合
序列的长度
得到指定索引的元素
寻找指定元素的索引
寻找满足条件的元素索引
寻找指定的子序列
寻找满足条件的子序列的长度
增加元素到序列中
替换序列中的元素
更新指定位置的索引
排序
反转一个序列
序列是否包含某个前缀或者后缀
序列是否包含某子序列
检查两个序列对应的元素是否满足断言
集合操作
去掉重复的元素
得到元素的各种排列
得到序列的指定长度的元素的组合
将序列进行转换
偏函数的应用
IndexedSeq和LinearSeq
Range和NumericRange
Vector
第5章 Set
检查Set集合是否包含元素
增加一个元素或者一组元素到Set集合中
从Set集合中去掉一个元素或一组元素
二元Set集合运算
更新一个可变Set集合的元素
克隆Set集合
SortedSet
BitSet
HashSet
ListSet
LinkedHashSet
第6章 Map
初始化
根据键值查找值
包含
增加新的键值对
删除键
根据键更新它的值
得到键的集合
得到值的集合
遍历Map集合
如何将一个可变Map集合转换成不可变Map集合
新的转换函数
偏函数
克隆
反转Map的键值对
将一个Set集合转换成Map集合
IntMap,LongMap
HashMap
SortedMap和immutable.TreeMap
immutable.ListMap,mutable.ListMap
mutable.LinkedHashMap
mutable.MultiMap
mutable.OpenHashMap
mutable.WeakHashMap
第7章 数组
数组的初始化
数组的长度
更新数组
连接两个数组
复制数组
生成等差数列
填充数组
tabulate
ArrayOps
Searching
WrappedArray
第8章 字符串(String和StringBuilder)
字符串方法
拼接字符串多次
把首字母大写
字符串比较
字符串格式化
按照换行符分割字符串
正则表达式
分割字符串
strip字符串
集合方法
字符串窜改(String Interpolation)
StringBuilder
第9章 缓冲器
增加元素
移除元素
Trim、clear和clone
ListBuffer,ArrayBuffer
RingBuffer
第10章 列表
Nil,::
初始化,以及::和:::操作符
模式匹配
MutableList
使用列表实现快速排序
Option
第11章 栈和队列
栈(Stack)
ArrayStack
不可变队列(immutable.Queue)
可变队列(mutable.Queue)
优先级队列(PriorityQueue)
第12章 流
初始化:#::和#:::
流相关类
记忆化(memoization)
栈溢出(StackOverflowError)
OOM问题
无限随机数流
无限整数流
中缀表达式和模式匹配
无限流
蓄水池抽样算法
第13章 并行集合
并行集合的类型
可产生副作用的操作(Side-Effecting Operations)
非结合操作(Non-Associative Operations)
性能
串行集合和并行集合的转换
不同集合类型之间的转换
并发集合配置
第14章 Scala集合总结
相等(Equality)
性能
与Java集合类的转换
技巧和陷阱
发布订阅类
for推导式(for comprehensions)
其他集合库