Kotlin函数作为val表达式

Kotlin函数作为val表达式,kotlin,Kotlin,我将函数表达式声明为val: val greeting = { println("what the hello1") println("what the hello2") } 然后,我想这样称呼它: greeting 然而,当我调用它时,没有打印任何内容。有什么想法吗?答案是需要用括号调用Kotlin表达式,如下所示: 问候语() 或者greeting.invoke()更准确地说,正如您定义的那样,它是一个函数(类型为Function0或()-

我将函数表达式声明为val:

val greeting = {
  println("what the hello1")
  println("what the hello2")
}
然后,我想这样称呼它:

greeting

然而,当我调用它时,没有打印任何内容。有什么想法吗?

答案是需要用括号调用Kotlin表达式,如下所示:
问候语()

或者
greeting.invoke()

更准确地说,正如您定义的那样,它是一个函数(类型为
Function0
()->Unit
),因此需要使用
()
调用