Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/kotlin/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Kotlin:变量的初始化和get_Kotlin - Fatal编程技术网

Kotlin:变量的初始化和get

Kotlin:变量的初始化和get,kotlin,Kotlin,以下两者之间的区别是什么: 1. var abc = someObject.getSomeValueWhichChangesFrequently() vs 2. var abc = someObject.getSomeValueWhichChangesFrequently() get = someObject.getSomeValueWhichChangesFrequently() someObject.GetSomeValuewhi

以下两者之间的区别是什么:

1.
    var abc = someObject.getSomeValueWhichChangesFrequently()
    
    vs 
  
2.  
    var abc = someObject.getSomeValueWhichChangesFrequently()
       get = someObject.getSomeValueWhichChangesFrequently()
someObject.GetSomeValuewhichChangesFrequencly()经常更改。 将使用第一种方法,仅在init处设置值,然后始终从abc返回该值,而不管someObject稍后返回什么值 或者abc总是返回someObject的最新值。GetSomeValuewhichChangesFrequency()

我不想#2,因为我必须在abc的init和get()中调用someObject.getSomeValueWhichChangesFrequently()

请给我一些建议。谢谢

我不想#2,因为我必须在abc的init和get()中调用someObject.getSomeValueWhichChangesFrequently()

你应该写的是

val abc
   get() = someObject.getSomeValueWhichChangesFrequently()


在你的#2中调用初始化器实际上是无用的,因为它初始化了,但getter从未访问过它。

这是否回答了你的问题?对不起,没有
var abc
   get() = someObject.getSomeValueWhichChangesFrequently()
   set(value) = someObject.setSomeValueWhichChangesFrequently(value)