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

更新於:2021年10月27日

7K+ 次瀏覽

開啟你的職業生涯

完成課程獲得認證

開始學習
廣告