高阶函数
高阶函数是一种特殊的函数,特殊之处在于:它指使用其他函数作为参数或者返回值。
Scala的常见高阶函数包括Array.map、flatten、flatmap、foreach、reduce、filter和fold等。
(一)map 函数
作用:通过对数组的每一个元素应用一个函数来构建一个新数组。
例题1把数组(1,2,3,4,5) → (2,4,6,8,10)
val arr1 = Array(1,2,3,4,5,6)
val arr2 = arr1.map(x=>x*2)
for(i <- arr2){
println(i)
}
(一)foreach函数
作用:对数组的每一个元素应用函数。
如何应用
打印数组中的元素
arr2.foreach(println)
(二)filter函数
作用:对数组元素使用函数进行过滤。
例题 在数组中找出元素是偶数的,并组成新数组。(1,2,3,4,5) → (2,4)
val arr1 = Array(1,2,3,4,5,6)
val arr3 = arr1.filter(x=> x%2 == 0)
arr3.foreach(println)
(三)flatten函数
作用:将二维数组中的元素展平至单数组中。
var arr1 = Array(Array(1,2,3), Array(4,5,6))
println(arr1(0)(0))
var arr2 = arr1.flatten