在 Python 中,您可以将其_用作变量名。如果我val _ = 3在 Kotlin IntelliJ 中编写例如给我一个错误:
Names _, __, ___, ..., are reserved in Kotlin
Run Code Online (Sandbox Code Playgroud)
它们是用来做什么的?它们的作用是什么?
hot*_*key 13
单下划线已经以多种方式使用,您希望跳过参数或组件并且不想为其命名:
val l = listOf(1, 2, 3)
l.forEachIndexed { index, _ -> println(index) }
Run Code Online (Sandbox Code Playgroud)对于解构声明中未使用的组件:
val p = Pair(1, 2)
val (first, _) = p
Run Code Online (Sandbox Code Playgroud)忽略try-catch语句中的异常:
try {
/* ... */
} catch (_: IOException) {
/* ... */
}
Run Code Online (Sandbox Code Playgroud)这些语法形式是在 Kotlin 1.1 中引入的,这就是为什么在 Kotlin 1.1 之前保留下划线名称的原因。像__,这样的多下划线名称___也被保留,这样它们就不会在以前使用单下划线名称的地方被滥用。
正如@Willi Mentzel在评论中指出的那样,下划线的另一种用法虽然不在标识符的位置,但在数字文字中分隔数字组:
val oneMillion = 1_000_000
val creditCardNumber = 1234_5678_9012_3456L
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3493 次 |
| 最近记录: |