《Scala集合技术手册》PDF下载

  • 购买积分:9 如何计算积分?
  • 作  者:晁岳攀著
  • 出 版 社:北京:电子工业出版社
  • 出版年份:2016
  • ISBN:9787121287763
  • 页数:180 页
图书介绍:《Scala集合技术手册》是第一本全面介绍Scala集合框架的图书,它基于最新的Scala 2.11编写,深入全面地介绍了Scala集合框架的集合类和方法,通过图例、代码示例、表格等多种方式多方位地介绍集合类的方法和实现,并且对相关的类型的性能进行分析和比较,总结了各个集合类的特点,帮助读者快速地掌握Scala集合框架,并且可以作为日常Scala开发的参考书。

第1章 Scala集合库简介 1

Scala编程语言 1

Scala集合 2

谁应该阅读此书 7

为什么写这本书 7

印刷体变化 7

内容概要 8

第2章 Traversable 9

初始化Traversable对象 10

集合的静态类型和类型擦除 12

对Traversable实例中每个元素执行操作(foreach) 13

平展一个Traversable实例 14

转置Traversable集合(transpose) 17

unzip一个Traversable 18

连接两个Traversable到一个新的Traversable 19

连接多个Traversable对象到一个新的Traversable 21

利用偏函数筛选元素 22

对所有的元素应用一个函数,并将结果放入一个新的Traversable对象中 23

利用scan计算Traversable元素的阶乘 24

使用指定的函数折叠Traversable的元素 26

判断一个Traversable非空 28

得到Traversable对象的特定的元素 29

得到Traversable对象的尾部 30

选择Traversable的一段子集 31

选取Traversable对象的前N个元素 32

跳过开头的前N个元素,选择剩余的元素 33

根据条件筛选元素 34

给Traversable对象的元素分组 35

检查Traversable对象中的元素是否满足条件 37

统计满足断言的元素个数 37

归约操作 38

在Traversable对象上调用聚合函数 40

基于Traversable对象生成字符串 41

集合类型转换 42

复制元素到一个数组 44

返回一个Traversable对象的视图view 45

得到Traversable对象的底层实现 46

使用一个相同的元素填充元素 46

在某个值域上生成指定间隔的队列 47

tabulate 48

生成空的Traversable对象 48

得到Traversable对象的串行对象和并行对象 49

第3章 Iterable 51

将Iterable对象分组 53

以滑动窗口的方式分组Iterable对象 54

zip两个集合 55

zipAll两个长度不同的集合 56

使用本身的索引zip一个Iterable集合 57

检查两个Iterables是否包含相同的元素 57

得到尾部的N个元素 58

去掉尾部的N个元素 59

第4章 Seq 60

得到序列的索引集合 61

序列的长度 61

得到指定索引的元素 62

寻找指定元素的索引 63

寻找满足条件的元素索引 64

寻找指定的子序列 64

寻找满足条件的子序列的长度 65

增加元素到序列中 65

替换序列中的元素 66

更新指定位置的索引 66

排序 67

反转一个序列 68

序列是否包含某个前缀或者后缀 69

序列是否包含某子序列 69

检查两个序列对应的元素是否满足断言 69

集合操作 70

去掉重复的元素 71

得到元素的各种排列 72

得到序列的指定长度的元素的组合 72

将序列进行转换 73

偏函数的应用 74

IndexedSeq和LinearSeq 75

Range和NumericRange 76

Vector 77

第5章 Set 80

检查Set集合是否包含元素 82

增加一个元素或者一组元素到Set集合中 82

从Set集合中去掉一个元素或一组元素 83

二元Set集合运算 84

更新一个可变Set集合的元素 85

克隆Set集合 86

SortedSet 86

BitSet 88

HashSet 90

ListSet 91

LinkedHashSet 92

第6章 Map 94

初始化 94

根据键值查找值 95

包含 96

增加新的键值对 97

删除键 97

根据键更新它的值 98

得到键的集合 99

得到值的集合 99

遍历Map集合 100

如何将一个可变Map集合转换成不可变Map集合 100

新的转换函数 101

偏函数 101

克隆 102

反转Map的键值对 102

将一个Set集合转换成Map集合 103

IntMap,LongMap 103

HashMap 104

SortedMap和immutable.TreeMap 104

immutable.ListMap,mutable.ListMap 105

mutable.LinkedHashMap 105

mutable.MultiMap 106

mutable.OpenHashMap 107

mutable.WeakHashMap 107

第7章 数组 109

数组的初始化 110

数组的长度 112

更新数组 113

连接两个数组 113

复制数组 113

生成等差数列 114

填充数组 114

tabulate 115

ArrayOps 115

Searching 116

WrappedArray 116

第8章 字符串(String和StringBuilder) 117

字符串方法 118

拼接字符串多次 119

把首字母大写 119

字符串比较 120

字符串格式化 120

按照换行符分割字符串 123

正则表达式 124

分割字符串 124

strip字符串 125

集合方法 126

字符串窜改(String Interpolation) 126

StringBuilder 128

第9章 缓冲器 129

增加元素 129

移除元素 130

Trim、clear和clone 131

ListBuffer,ArrayBuffer 132

RingBuffer 132

第10章 列表 134

Nil,:: 134

初始化,以及::和:::操作符 135

模式匹配 136

MutableList 136

使用列表实现快速排序 137

Option 137

第11章 栈和队列 139

栈(Stack) 139

ArrayStack 141

不可变队列(immutable.Queue) 143

可变队列(mutable.Queue) 144

优先级队列(PriorityQueue) 144

第12章 流 147

初始化:#::和#::: 148

流相关类 150

记忆化(memoization) 150

栈溢出(StackOverflowError) 150

OOM问题 152

无限随机数流 153

无限整数流 153

中缀表达式和模式匹配 153

无限流 154

蓄水池抽样算法 156

第13章 并行集合 158

并行集合的类型 159

可产生副作用的操作(Side-Effecting Operations) 160

非结合操作(Non-Associative Operations) 161

性能 162

串行集合和并行集合的转换 163

不同集合类型之间的转换 164

并发集合配置 165

第14章 Scala集合总结 168

相等(Equality) 168

性能 170

与Java集合类的转换 172

技巧和陷阱 174

发布订阅类 177

for推导式(for comprehensions) 178

其他集合库 179