在 Scala 中返回一个值
    
    
            Mohammad Irfan
    2023年1月30日
    
    Scala
    Scala Return
    
 
本教程将讨论如何从 Scala 中的函数返回值。
在 Scala 中返回一个整数值
在 Scala 中,函数可能会也可能不会向调用者函数返回任何值。这取决于函数的实现。
返回值的函数可以在其签名中指定,以便调用者知道将返回什么类型的值。在这个例子中,我们创建了一个接受两个整数参数并返回一个整数的函数。
代码:
object MyClass {
    def main(args: Array[String]) {
        var result = getSum(10,20);
        print(result);
    }
    def getSum( a:Int, b:Int ) : Int = {
      var sum:Int = 0
      sum = a + b
      return sum
   }
}
输出:
30
在 Scala 中返回一个匿名值
我们声明了一个 getSum(),它接受两个整数参数但不指定返回类型。现在,由 Scala 解释器通过函数的最后一个表达式来推断返回值的类型。
下面示例中实现的函数返回一个整数值。
代码:
object MyClass {
    def main(args: Array[String]) {
        var result = getSum(10,20);
        print(result);
    }
    def getSum( a:Int, b:Int ) = {
      var sum:Int = 0
      sum = a + b
      sum
   }
}
输出:
30
同样,我们也可以返回字符串值。该函数根据最后一个表达式/语句类型采用两个字符串参数。
代码:
object MyClass {
    def main(args: Array[String]) {
        var result = getSum("Hello","Hi");
        print(result);
    }
    def getSum( a:String, b:String ) = {
      var sentence:String = ""
      sentence = a + b
      sentence
   }
}
输出:
HelloHi
在 Scala 中返回列表或向量值
我们还可以返回一个完整的容器,例如数组、列表或向量。该函数在下面的代码中循环和产生后返回一个向量。
代码:
object MyClass {
    def main(args: Array[String]) {
        var result = getList(1,5);
        print(result);
    }
    def getList(a:Int, b:Int ) = {
        var list = for( c <- a to b) yield c
        list
   }
}
输出:
Vector(1, 2, 3, 4, 5)
在 Scala 中,如果没有返回值,则假定最终表达式为返回值。如果最后一个表达式是你想要返回的,你可以跳过 return 关键字。
        Enjoying our tutorials? Subscribe to DelftStack on YouTube to support us in creating more high-quality video guides. Subscribe