我正在学习Scala,我正在尝试理解定义函数的第一种方法背后的原因引发错误"+","v1"和"v2"未找到,而下面列出的第二种方法有效.
方法1: - 使用Lambda表达式表示法:
val addVectLambda = (v1:Vect3,v2:Vect3):Vect3 => (v1._1 + v2._1, v1._2 + v2._2, v1._3 + v2._3)
Run Code Online (Sandbox Code Playgroud)
方法2: - 使用def关键字:
def addVect (v1:Vect3, v2:Vect3):Vect3 = (v1._1 + v2._1, v1._2 + v2._2, v1._3 + v2._3)
Run Code Online (Sandbox Code Playgroud)
如果已经提出这个问题我很抱歉 - 我试图搜索但找不到答案.真正感谢任何帮助/指导.
谢谢
编辑:产生错误消息的完整代码:
type Vect3 = (Double, Double, Double)
val addVectLambda = (v1:Vect3,v2:Vect3):Vect3 => (v1._1 + v2._1, v1._2 + v2._2, v1._3 + v2._3)
Run Code Online (Sandbox Code Playgroud)
错误消息:
error: not found: type +
val addVectLambda = (v1:Vect3,v2:Vect3):Vect3 => (v1._1 + v2._1, v1._2 + v2._2, v1._3 + …Run Code Online (Sandbox Code Playgroud)