为什么加号需要在行尾,而不是在下一行的开头?

在Kotlin中,如果您想要添加expression式来跨越多行,则需要将加号放在行尾,而不是开头。 例如:

var a = 1 var b = 2 var c = 3 var d = a + b + c println(d) // prints "6" var e = a + b + c println(e) // prints "1" 

据我所知,这是因为Kotlin把第二个例子解释为三个单独的陈述,就像这样:

 var e = a + b + c 

但我还没有find任何文件说明为什么+ somevariable某些变化本身是一个有效的陈述。 它不增加variables,而println(+somevariable)打印与println(somevariable)相同的值。

One Solution collect form web for “为什么加号需要在行尾,而不是在下一行的开头?”

我相信线路

 val a = 5 + 6 

被解析为两个语句:

  1. 用expression式5值定义一个var
  2. expression式+6 ,带有一元加号。

我在Scala语言中遇到了同样的麻烦。

  • JSONObject()的错误 - Kotlin
  • 列表或数组在Kotlin中始终为空
  • Kotlin,高级function麻烦
  • 如何调试Kotlin序列/集合
  • 最佳做法访问kotlin的财产
  • 如何在Android中使用kotlin获取片段中的资源ID?
  • getActionView已被弃用?
  • 正确实施Kotlin的等待和通知
  • 使用gradle将“提供的”配置添加到kotlin / java库
  • 没有getter的Kotlin构造函数参数
  • Kotlin平台types和generics
  • Kotlin language will be the best programming language for Android.