相关疑难解决方法(0)

Kotlin函数声明:在花括号之前等于符号

在Kotlin中,函数声明语法允许您在花括号之前写入等号.考虑这两个例子:

  1. 没有=标志:

    fun foo() {
        bar()
        println("baz")
    }
    
    Run Code Online (Sandbox Code Playgroud)

    只需调用即可执行正文中的代码foo().

  2. =标志:

    fun foo() = {
        bar()
        println("baz")
    }
    
    Run Code Online (Sandbox Code Playgroud)

    在这里,当foo()被调用时,没有任何事情发生,但为了让身体执行,可以写foo()().

这两个声明有什么不同,为什么它们的表现不同?


这个问题尽管没有多大意义,但是作者有意提问并回答,因为已经发布了一些问题,因为功能定义不正确导致人们遇到问题.

function kotlin

24
推荐指数
1
解决办法
1977
查看次数

scala中的所有东西都是函数或表达式或对象吗?

我很迷惑.

我认为一切都是表达式,因为语句返回一个值.但我也听说scala中的所有东西都是一个对象.

实际上是什么?为什么scala选择以某种方式做到这一点?这对scala开发人员意味着什么?

scala

8
推荐指数
3
解决办法
2473
查看次数

标签 统计

function ×1

kotlin ×1

scala ×1