scala基礎37 List高階方法

2021-07-16 02:26:13 字數 778 閱讀 2719

println(list(1, 2, 3, 4, 5).partition(_ % 2 == 0))

//find返回option(some或none),因為find可能找不到

println(list(1, 2, 3, 4, 5).find(_ % 2 == 0))

println(list(1, 2, 3, 4, 5).find(_ <= 0))

//獲取所有符合條件的元素

println(list(1, 2, 3, 4, 5).takewhile(_ < 4))

//把符合條件的元素drop掉

println(list(1, 2, 3, 4, 5).dropwhile(_ < 4))

//將元素分成符合條件的和不符合條件的兩部分

println(list(1, 2, 3, 4, 5).span(_ < 4))

println(list(1, 2, 3, 4, 5))

println(list(1, 2, 3, 4, 5))

//exists: m中至少存在乙個元素滿足條件f

//forall: 所有元素滿足f條件

def hastotatallyzerorow(m: list[list[int]]) = m.exists(row => row.forall(_ == 0))

//矩陣

val m = list(list(1, 0, 0), list(0, 1, 0), list(0, 0, 0))

println(hastotatallyzerorow(m))

}

scala練習題 Scala基礎

1 在scala repl中,計算3的平方根,然後再對該值求平方。現在,這個結果與3相差多少?scala scala.math.sqrt 3 warning there were 1 deprecation warnings re run with deprecation for details r...

Scala基礎學習 scala集合 005

定長陣列 println test val a new array string 5 a.length a 0 hello 賦值 a 1 取值 b 1 flink 可以修改值,並沒有修改指標 val c array 1,2,3,4,5,6 c.mkstring 轉換為字串 c.mkstring c....

scala快速上手 二 Scala 基礎

定義變數和常量 變數 用 var 定義 可修改 常量 用 val 定義,不可修改 var name zhangsan println name name lisi println name val gender m gender m 錯誤,不能給常量再賦值 class person object l...