我目前正在学习高阶函数,并且正在尝试实现一个函数。
def bigger(n: Integer, m: Integer):Integer={
if(n>m) return n
else return m
}
def bigT(t: Tuple3[Int, Int,(Int,Int)=>Int]): Integer={
return t._3(t._1,t._2)
}
val tup=(5,2,bigger)
第二个函数接收一个包含两个整数的元组和将用它们执行的函数。
当我尝试运行此代码时(使用ideone.com)收到以下错误:
“对象Main中较大的方法缺少参数; 如果要将其视为部分应用函数,请使用“_”跟随此方法 val tup =(5,2,更大)“
我想将名为tup的元组后来传递给函数bigT
答案 0 :(得分:0)
您感到困惑Integer
和Int
。
尝试在任何地方使用Int
:
def bigger(n: Int, m: Int) = if(n > m) n else m
def bigT(t: (Int, Int, (Int, Int) => Int)): Int = t._3(t._1, t._2)
val res = bigT((5, 2, bigger)) // 5