函数子面里

14 阅读1分钟

#函数字面里的方式

/*

  • 函数字面里
  • 另一种定义函数的方式
  • */

// 定义函数的方式一:def def getSum(x:Int, y:Int):Int = { x + y }

// 定义函数的方式二:字面里 val getSum1 = (x:Int, y:Int) => { x + y }

def main(args: Array[String]): Unit = { println( getSum(10,20)) println( getSum1(10,20))

#定义字面量函数

/* *把一个函数 当做参数 传递给另一个函数

  • */

// 定义两个字面量函数。(Int,Int) => Int 看成一种数据类型 val f1:(Int,Int) => Int = _ + _ // val a:Int = 1

val f2:(Int, Int) => Int = _ +_

//定义一个函数,它有三个参数 //参数1:类型是 (Int,Int)=>Int。它表示这里需要一个函数 def test(fn: (Int,Int)=>Int, x:Int, y:Int): Int = { fn(x,y) }

def main(args: Array[String]): Unit = { println( test(f1, 10,20) ) println( test(f2, 10,20) ) }