gpt4 book ai didi

kotlin - 为什么在 Kotlin 中 `+` 之前但在 `.` 之前没有换行符?

转载 作者:行者123 更新时间:2023-12-05 03:18:58 25 4
gpt4 key购买 nike

我试图理解这个答案:https://stackoverflow.com/a/44180583/481061尤其是这一部分:

if the first line of the statement is a valid statement, it won't work:

val text = "This " + "is " + "a "
+ "long " + "long " + "line" // syntax error

点运算符似乎不是这种情况:

val text = obj
.getString()

这是如何运作的?我正在查看语法 ( https://kotlinlang.org/docs/reference/grammar.html ),但不确定要寻找什么来理解差异。它是内置于语法规则之外的语言中,还是语法规则?

最佳答案

这是一个语法规则,但我在看一个不完整的语法。

完整语法https://github.com/Kotlin/kotlin-spec/blob/release/grammar/src/main/antlr/KotlinParser.g4memberAccessOperatoridentifier 的规则中有明确规定。

DOT 始终可以在 NL* 之前,而其他运算符不能,除非在单独定义的带括号的上下文中。

关于kotlin - 为什么在 Kotlin 中 `+` 之前但在 `.` 之前没有换行符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/73575823/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com