如何强制转换函数中已定义的Scala值

如何强制转换函数中已定义的Scala值,scala,Scala,使用时如何转换值?例如: scala> def sum(x:Double, y:Int) { | x + y | } sum: (x: Double,y: Int)Unit scala> println(sum(2,3)) () 如何使用println修改行以打印正确的数字 谢谢注意,sum返回单位: sum: (x: Double,y: Int)Unit 发生这种情况的原因是您错过了方法声明和主体之间的等号: def sum(x:Double, y:Int

使用时如何转换值?例如:

scala> def sum(x:Double, y:Int) {
     | x + y
     | }
sum: (x: Double,y: Int)Unit

scala> println(sum(2,3))
()
如何使用println修改行以打印正确的数字


谢谢

注意,
sum
返回
单位

sum: (x: Double,y: Int)Unit
发生这种情况的原因是您错过了方法声明和主体之间的等号:

def sum(x:Double, y:Int) {
您应该这样声明:

def sum(x:Double, y:Int) = {

您的问题不在于强制转换,而在于函数定义。因为您在函数参数和函数体之前输入了
=
,所以它返回
单位
(即无),正如REPL告诉您的那样:
总和:(x:Double,y:Int)
单位。只需将等号相加:

def sum(x: Double, y: Int) = {
  x + y
}
现在您的
sum
方法将返回一个
Double

值得一提的是
()
单位