草庐IT

val_loss

全部标签

android-studio - 定义全局 android.widget var/val 时为 "lateinit"或 "by lazy"

定义全局android.widget变量时,例如TextView,是使用lateinit还是bylazy更可取?我最初认为使用bylazy会更好,因为它是不可变的,但我不完全确定。懒人示例:classMainActivity:AppCompatActivity(){valhelloWorldTextViewbylazy{findViewById(R.id.helloWorldTextView)asTextView}overridefunonCreate(savedInstanceState:Bundle?){super.onCreate(savedInstanceState)setCo

android-studio - 定义全局 android.widget var/val 时为 "lateinit"或 "by lazy"

定义全局android.widget变量时,例如TextView,是使用lateinit还是bylazy更可取?我最初认为使用bylazy会更好,因为它是不可变的,但我不完全确定。懒人示例:classMainActivity:AppCompatActivity(){valhelloWorldTextViewbylazy{findViewById(R.id.helloWorldTextView)asTextView}overridefunonCreate(savedInstanceState:Bundle?){super.onCreate(savedInstanceState)setCo

c++ - 摆脱 "warning C4267 possible loss of data"的最佳策略是什么?

我将一些遗留代码从win32移植到win64。不是因为win32对象大小对我们的需求来说太小了,而是因为win64现在更标准了,我们希望将所有环境移植到这种格式(我们还使用一些3rd方库,在64位中提供比在32位中更好的性能).我们最终得到了很多;warningC4267:'argument':conversionfrom'size_t'to'...',possiblelossofdata主要是由于这样的代码:unsignedintsize=v.size();其中v是一个STL容器。我知道警告为什么有意义,我知道为什么发出警告以及如何修复它。但是,在这个具体示例中,我们从未遇到过容器大

android-studio - 在调试器中更改 kotlin val

如何在debugger中改变valproperty(不是方法变量)?是的,我知道val是最终模拟断点在这里:设置值在上下文菜单中禁用:评估不起作用: 最佳答案 在调试器中选择值,使用右键单击上下文菜单选择“设置值...”(默认快捷键F2)。变量的值现在应该显示在文本字段中。输入所需的值并按Enter键更改该值。您只需要输入值而不是赋值(例如x="test"是错误的,只需输入值"test")。更改后的值现在应用于该字段。在调试器中,也可以更改Kotlin中不可变val定义值的值,因为也可以更改Java中final定义变量的值。

android-studio - 在调试器中更改 kotlin val

如何在debugger中改变valproperty(不是方法变量)?是的,我知道val是最终模拟断点在这里:设置值在上下文菜单中禁用:评估不起作用: 最佳答案 在调试器中选择值,使用右键单击上下文菜单选择“设置值...”(默认快捷键F2)。变量的值现在应该显示在文本字段中。输入所需的值并按Enter键更改该值。您只需要输入值而不是赋值(例如x="test"是错误的,只需输入值"test")。更改后的值现在应用于该字段。在调试器中,也可以更改Kotlin中不可变val定义值的值,因为也可以更改Java中final定义变量的值。

java - Kotlin 中的变量,与 Java : 'var' vs. 'val' 的区别?

我正在努力学习Kotlin.Kotlin中的val、var和internal与Java相比是什么?在Java中:RadioGroupradioGroup;RadioButtonbutton;Buttonsubmit;转换后显示:internalvarradioGroup:RadioGroupinternalvarbutton:RadioButtoninternalvarsubmit:Button 最佳答案 val和var是可用于声明变量(和属性)的两个关键字。不同之处在于,使用val会给你一个只读变量,这与在Java中使用final

java - Kotlin 中的变量,与 Java : 'var' vs. 'val' 的区别?

我正在努力学习Kotlin.Kotlin中的val、var和internal与Java相比是什么?在Java中:RadioGroupradioGroup;RadioButtonbutton;Buttonsubmit;转换后显示:internalvarradioGroup:RadioGroupinternalvarbutton:RadioButtoninternalvarsubmit:Button 最佳答案 val和var是可用于声明变量(和属性)的两个关键字。不同之处在于,使用val会给你一个只读变量,这与在Java中使用final

parameters - 无法为 Kotlin 中 fun 中的局部变量重新分配 Val 的编译时错误

在有趣的交换中,我试图用b1更改a1的值,但它显示“val无法重新分配编译时错误”。如果我不能这样改变,那怎么可能呢?funswap(a1:String,b1:String){valtemp=a1a1=b1b1=temp}注意:这只是一个示例,用于了解为什么我无法像在Java中那样重新分配局部变量。 最佳答案 在Kotlin中,val声明了最终的、只读的、引用-这正是编译器错误告诉你的内容Valcannotbereassigned一旦为val赋值,就无法更改。如果您希望能够重新分配它,则必须将其声明为var在Kotlin中,方法参数

parameters - 无法为 Kotlin 中 fun 中的局部变量重新分配 Val 的编译时错误

在有趣的交换中,我试图用b1更改a1的值,但它显示“val无法重新分配编译时错误”。如果我不能这样改变,那怎么可能呢?funswap(a1:String,b1:String){valtemp=a1a1=b1b1=temp}注意:这只是一个示例,用于了解为什么我无法像在Java中那样重新分配局部变量。 最佳答案 在Kotlin中,val声明了最终的、只读的、引用-这正是编译器错误告诉你的内容Valcannotbereassigned一旦为val赋值,就无法更改。如果您希望能够重新分配它,则必须将其声明为var在Kotlin中,方法参数

reference - 为什么我不能从引用对象的 val 或 typealias 引用嵌套对象?

考虑以下代码:objectSomeObjectA{objectSomeObjectB{vala="test"}}valX=SomeObjectAtypealiasY=SomeObjectASomeObjectA.SomeObjectB//worksX.SomeObjectB//errorY.SomeObjectB//error我不能使用引用外部对象的val或typealias来引用嵌套对象(在外部对象中)。为什么? 最佳答案 编译器错误来自java,kotlinobjects转换为javaclasses如下:publicfinalc