scala list collect 用法
collect methoad 接受 PartialFunction 作為參數。結果產生一個 list。輸出 list 的內容是該 PartialFunction 有定義且由 PartialFunction 運算後的值
PartialFunction 長的像這樣
{
case a: Int => a.toString
case a: String => 1
}
以下面例子作為說明
List(1, 2, "3", Nil) collect { case a: Int => a.toString case b: String => 1}
其結果為
List(1, 2, 1)
說明
原始的 list 內容是整數 1, 2
和字串 3 和一個 Nil 物件
整數 1 和 2 有定義在 PartialFunction,
因此1 和 2 經過 PartialFunction 運算後,會放在結果
又字串 3 有定義在 PartialFunction,
因此 3 經過 PartialFunction 運算後,會放在結果
又 Nil 不沒有定義在 PartialFunction
因此沒有出現在結果