Kotlin中语法`!:: someReference`的等价物

ank*_*ag2 -1 android operators kotlin

通过这个 Android Doc,我看到了这段代码:

fun getUsers(): LiveData<List<User>> {
    if (!::users.isInitialized) {
        users = MutableLiveData()
        loadUsers()
    }
    return users
}
Run Code Online (Sandbox Code Playgroud)

我知道使用::operator来创建成员引用或类引用.但是!::users.isInitialized语法的代码是什么?

PS:这与Kotlin中:: operator的使用有什么不重复

Fir*_*mon 5

::this::Kotlin 的缩写.

:: 是一个创建成员引用或类引用的运算符.

它还用于检查lateinit var是初始化还是获取Bound Class References

从Kotlin 1.2开始,明确指定this为接收器是不必要的:this::并且::是等效的.

您可以查看文档示例以清楚地理解相同的内容.