1.Map

将用:转换数据
var arr=Array(1 to 10 :_*)
arr.foreach(println)
arr.map((n:Int) => n*2) //给map一个匿名函数,将map遍历的每一个值x2   会返回一个arr
res1: Array[Int] = Array(2, 4, 6, 8, 10, 12, 14, 16, 18, 20)
 
map当中的形参n通常可以使用 "_" 来替代
arr.map(_*2)
res1: Array[Int] = Array(2, 4, 6, 8, 10, 12, 14, 16, 18, 20)
 

2.filter

作用:过滤数据
arr.filter((n:Int) => n%2 ==0)
arr.filter(_%2 ==0)
res0: Array[Int] = Array(2, 4, 6, 8, 10)
    //反向过滤
arr.filterNot((n:Int) => n<8)
arr.filterNot(_n<8)
res0: Array[Int] = Array(8, 9, 10)
 
 

3.reduce

作用:聚合数据
arr.sum
arr.reduce((n:Int,m:Int) =>m+n)
arr.reduce( _ + _)
res0: Int = 55
res1: Int = 55
res2: Int = 55



《快学Scala》高清中文PDF+源代码
提取码:an5d 
 
 
posted on 2019-03-10 22:01  飞小白  阅读(107)  评论(0编辑  收藏  举报