Scala 集合技術手冊 Scala集合技术手册

晁岳攀

  • 出版商: 電子工業
  • 出版日期: 2016-06-01
  • 定價: $348
  • 售價: 8.5$296
  • 語言: 簡體中文
  • 頁數: 180
  • 裝訂: 平裝
  • ISBN: 7121287765
  • ISBN-13: 9787121287763
  • 相關分類: JVM 語言
  • 下單後立即進貨 (約4週~6週)

買這商品的人也買了...

商品描述

<內容介紹>

《Scala集合技術手冊》是首部全面介紹Scala集合框架的圖書,它基於最新的Scala 2.11編寫,深入全面地介紹了Scala集合框架的集合類和方法,通過圖例、代碼示例、表格等多種方式多方位地介紹集合類的方法和實現,並且對相關的類型的性能進行分析和比較,總結了各個集合類的特點,幫助讀者快速地掌握Scala集合框架,並且可以作為日常Scala開發的參考書。

<目錄>


推薦序

第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
immutable.ListMap,mutable.ListMap
mutable.LinkedHashMap
mutable.MultiMap
mutable.OpenHashMap
mutable.WeakHashMap

 


第7章數組
數組的初 ​​始化
數組的長度
更新數組
連接兩個數組
複製數組
生成等差數列
填充數組
tabulate
ArrayOps
Searching
WrappedArray

 


第8章字符串(String和StringBuilder)
字符串方法
拼接字符串多次
把首字母大寫
字符串比較
字符串格式化
按照換行符分割字符串
正則表達式
分割字符串
strip字符串
集合方法
字符串竄改(StringInterpolation)
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)
其他集合庫

目錄大綱