Kotlin 中“const”和“val”的区别是什么?
const 关键字
在 Kotlin 中,只要变量的值在应用程序的整个生命周期中保持不变,就使用const关键字。这意味着const仅应用于类的不可变属性。简单来说,使用const声明类的只读属性。
对const变量有一些限制,如下所示:
const只能应用于类的不可变属性。
它不能赋值给任何函数或任何类构造函数。它应该赋值为原始数据类型或字符串。
const变量将在编译时初始化。
示例
在下面的示例中,我们将声明一个const变量,并在我们的应用程序中使用相同的变量。
const val sName = "tutorialspoint"; // This line will throw an error as we cannot // use Const with any function call. // const val myFun = MyFunc(); fun main() { println("Example of Const-Val--->"+sName); }
输出
它将产生以下输出:
Example of Const-Val--->tutorialspoint
val 关键字
在 Kotlin 中,val也用于声明变量。"val"和"const val"都用于声明类的只读属性。声明为const的变量在运行时初始化。
val处理类的不可变属性,即只能使用val声明只读变量。
val在运行时初始化。
对于val,内容可以不变,而对于const val,内容不能更改。
示例
我们将修改前面的示例以使用val传递函数,并且在运行时不会出现任何错误。
const val sName = "tutorialspoint"; // We can pass function using val val myfun=MyFunc(); fun main() { println("Example of Const-Val--->"+sName); println("Example of Val--->"+myfun); } fun MyFunc(): String { return "Hello Kotlin" }
输出
执行代码后,它将生成以下输出:
Example of Const-Val--->tutorialspoint Example of Val--->Hello Kotlin
广告