Scalaベースの高次関数
1035 ワード
定義ていぎ:高次関数(関数パラメータ付き関数):ある関数を別の関数のパラメータ値として使用します.
高次関数の例
高次関数の例
(*)map: , ( ),
val numbers = List(1,2,3,4,5,6,7,8,9,10)
numbers.map((i:Int)=>i*2)
numbers.map(_ * 2)
(*)foreach: , ( ),
numbers.foreach((i:Int)=>i*2)
(*)filter: ,
2
numbers.filter((i:Int)=> i%2==0) true,
(*)zip:
List(1,2,3).zip(List(4,5,6))
(*)partition: ( , ) ,
: 2 ,
numbers.partition((i:Int)=> i%2==0)
(*)find: ( )
3
numbers.find(_%3 == 0)
(*)flatten:
List(List(2, 4, 6, 8, 10),List(1, 3, 5, 7, 9)).flatten
(*)flatMap map + flatten
var myList = List(List(2, 4, 6, 8, 10),List(1, 3, 5, 7, 9))
myList.flatMap(x=> x.map(_*2))
res16: List[Int] = List(4, 8, 12, 16, 20, 2, 6, 10, 14, 18)
: (1) List(2, 4, 6, 8, 10) List(1, 3, 5, 7, 9) x=> x.map(_*2)
(2) List