如何从Scala函数返回Unit?

Scala函数返回Unit

Unit是在Scala中用作返回语句的返回类型,当该函数未返回任何值时。

语法:

def functionName (arg...) : Unit = {

// 功能码

}

如何return?

当函数没有返回值时,我们可以返回Unit,即,当函数中未指定返回值时,函数会自动将Unit返回给调用函数。

演示如何返回unit的程序,

object MyClass {

    def favLang(lang:String) : Unit  = {

        println("我最喜欢的语言是 " + lang)

    };

    

    def main(args: Array[String]) {

        // 打印函数返回的值

        println(favLang("Scala"))

        

    }

}

输出:

我最喜欢的语言是 Scala

()

说明:

在上面的代码中,我们声明了一个favLang()返回Unit值的函数。然后,我们在main中打印了该函数的返回值,并打印了()。

如果我们返回返回类型为Unit的值怎么办?

让我们检查一下,如果我们从具有返回类型单位的函数中返回一个值,将会发生什么。

object MyClass {

    //返回单位值的函数

    def favLang(lang:String) : Unit  = {

        println("我最喜欢的语言是 " + lang)

        // 返回int值

        return 10

    };

    

    def main(args: Array[String]) {

        // 打印函数返回的值

        println(favLang("Scala"))

    }

}

输出:

我最喜欢的语言是 Scala

()

ex1.scala:6: warning: a pure expression does nothing in statement position

        return 10

               ^

ex1.scala:6: warning: enclosing method favLang has result type Unit: return value discarded

        return 10

        ^

说明:

在上面的代码中,我们尝试从具有返回类型Unit的函数中返回整数值。该函数将编译警告,并丢弃返回值并返回Unit值。

以上是 如何从Scala函数返回Unit? 的全部内容, 来源链接: utcz.com/z/337995.html

回到顶部