constants - "const"和 "val"有什么区别?

我最近读到了 const 关键字,我很困惑!我找不到 constval 关键字之间的任何区别,我的意思是我们可以使用它们来制作一个不可变的变量,我还有什么别的吗不见了?

最佳答案

consts 是编译时常量。这意味着它们的值必须在编译时分配,不像 vals,它可以在运行时完成。

这意味着,const 永远不能分配给函数或任何类构造函数,而只能分配给 String 或原语。

例如:

const val foo = complexFunctionCall()   //Not okay
val fooVal = complexFunctionCall()  //Okay

const val bar = "Hello world"           //Also okay

关于constants - "const"和 "val"有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37595936/

相关文章:

kotlin - Kotlin 中的惯用登录方式

kotlin - 为什么我们使用 "companion object"作为 Kotlin 中 Jav

kotlin - 在 Kotlin 中按多个字段对集合进行排序

arrays - 如何用值初始化 Kotlin 中的数组?

properties - 使用 "by lazy"与 "lateinit"进行属性初始化

kotlin - 如何将 Kotlin 的 MutableList 初始化为空 MutableLis

inheritance - 在 Kotlin 中扩展数据类

kotlin - 如何在 Kotlin 中将 String 转换为 Long?

collections - Kotlin 的列表缺少 "add"、 "remove"、 map 缺少

kotlin - 智能转换为 'Type' 是不可能的,因为 'variable' 是一个可变属性,