Kotlin:如何懒惰初始化矢量

时间:2016-04-06 01:50:34

标签: kotlin

当我懒惰初始化一个向量时。我可以在普通的Object类中进行如下操作。

val mPagerAdapter: PagerAdapter by lazy {
    PagerAdapter(supportFragmentManager, fragments, mTabsName)
}

但是,当我懒惰地初始化一个Vector变量时,如下所示

val fragments = Vector<Fragment>() by lazy {
    Vector<Fragment>()
}

它给了我一个陈述Unresolve Reference: by的错误。如何解决这个我懒得初始化的问题呢?

1 个答案:

答案 0 :(得分:4)

在第二种情况下,语法与第一个代码段(您在by之前初始化变量)明显不同,请比较:

val fragments by lazy { Vector<Fragment>() }