object base43 {
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))
}
}
object base44 {
val getSum = (x: Int, y: Int) => {
x + y
}
val getSum1 = (x: Int, y: Int) => x + y
val getSum2 = (_: Int) + (_: Int)
val getSum3: (Int, Int) => Int = _ + _
def main(args: Array[String]): Unit = {
println(getSum(10, 20))
println(getSum1(10, 20))
println(getSum2(10, 20))
println(getSum3(10, 20))
}
}
object base45 {
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(s"test(f1, 10, 20) = ${test(f1, 10, 20)}, f1(10, 20) = ${f1(10, 20)}, equals: ${test(f1, 10, 20) == f1(10, 20)}")
println(s"test(f2, 10, 20) = ${test(f2, 10, 20)}")
}