为什么 Kotlin 的代码可以直接从 "kotlin.collections" 调用顶级函数,而不导入包



为什么Kotlin的代码可以直接从"Kotlin.collections"调用顶级函数,而不导入包。例如下面的函数listOf:

data class Person1(val name: String, val age: Int)
class DataClassExecutor {
... ...
fun test(arg: String?): String? {
val persons = listOf(
Person1("Lucy", age = 26), 
Person1("Lily", age = 29))
... ...
}
}

请参阅本页:https://kotlinlang.org/spec/packages-and-imports.html.上面写着:

有些包的所有实体都是隐式的导入到任何Kotlin文件中,这意味着可以访问这样的实体而不显式使用导入指令。

该列表包括kotlin.collections

这与Java中隐式导入java.lang的方式类似。在Java中,不需要说java.lang.System.out.println,只要System.out.println就足够了。

相关内容

最新更新