Kotlin 變數詳解:宣告、賦值與最佳實踐指南

小万哥丶發表於2024-06-20

Kotlin 變數

變數是用於儲存資料值的容器。

要建立一個變數,使用 varval,然後使用等號(=)給它賦值:

語法

var 變數名 = 值
val 變數名 = 值

示例

var name = "John"
val birthyear = 1975

println(name)          // 列印 name 的值
println(birthyear)     // 列印 birthyear 的值

varval 的區別在於使用 var 關鍵字宣告的變數可以被更改/修改,而 val 變數則不行。

變數型別

與許多其他程式語言不同,Kotlin 中的變數不需要宣告指定的型別(比如對於文字是 "String",對於數字是 "Int",如果你熟悉的話)。

要在 Kotlin 中建立一個應該儲存文字的變數和另一個應該儲存數字的變數,請看下面的示例:

示例

var name = "John"      // String(文字)
val birthyear = 1975   // Int(數字)

println(name)          // 列印 name 的值
println(birthyear)     // 列印 birthyear 的值

Kotlin 足夠智慧,可以理解 "John" 是一個 String(文字),而 1975 是一個 Int(數字)變數。

然而,如果你堅持的話,也可以指定型別:

示例

var name: String = "John" // String
val birthyear: Int = 1975 // Int

println(name)
println(birthyear)

你也可以在不分配值的情況下宣告一個變數,並在以後分配值。但是,這隻有在指定型別時才可能:

示例
這樣是可以的:

var name: String
name = "John"
println(name)

示例
這將生成一個錯誤:

var name
name = "John"
println(name)

注意:你將在下一章學習更多關於資料型別的知識。

關於 val 的注意事項

當你使用 val 關鍵字建立一個變數時,值不能被更改/重新分配。

以下示例將生成一個錯誤:

示例

val name = "John"
name = "Robert"  // 錯誤(val 不能重新賦值)
println(name)

當使用 var 時,你可以隨時更改值:

示例

var name = "John"
name = "Robert"
println(name)

那麼何時使用 val

當你希望一個變數始終儲存相同的值時,val 關鍵字是有用的,比如 PI(3.14159...):

示例

val pi = 3.14159265359
println(pi)

顯示變數

就像你在上面的示例中看到的那樣,println() 方法經常用於顯示變數。

要同時結合文字和變數,使用 + 字元:

示例

val name = "John"
println("你好 " + name)

你也可以使用 + 字元將一個變數新增到另一個變數:

示例

val firstName = "John "
val lastName = "Doe"
val fullName = firstName + lastName
println(fullName)

對於數值,+ 字元作為數學運算子:

示例

val x = 5
val y = 6
println(x + y) // 列印 x + y 的值

從上面的示例中,你可以預期:

x 儲存值 5
y 儲存值 6
然後我們使用 println() 方法來顯示 x + y 的值,即 11

變數名

一個變數可以有一個簡短的名稱(比如 x 和 y)或更具描述性的名稱(age、sum、totalVolume)。

Kotlin 變數的一般規則是:

  • 名稱可以包含字母、數字、下劃線和美元符號
  • 名稱應該以字母開頭
  • 名稱也可以以 $ 和 _ 開頭(但我們在本教程中不會使用)
  • 名稱區分大小寫("myVar" 和 "myvar" 是不同的變數)
  • 名稱應該以小寫字母開頭,不能包含空格
  • 保留字(比如 Kotlin 關鍵字,如 var 或 String)不能用作名稱

駝峰命名法變數

你可能注意到我們在上面的示例中使用了 firstName 和 lastName 作為變數名稱,而不是 firstname 和 lastname。這被稱為 "駝峰命名法",被認為是一個良好的實踐,因為當你有一個變數名中包含不同單詞時,比如 "myFavoriteFood"、"rateActionMovies" 等,這樣做可以使它更易讀。

最後

為了方便其他裝置和平臺的小夥伴觀看往期文章:

微信公眾號搜尋:Let us Coding,關注後即可獲取最新文章推送

看完如果覺得有幫助,歡迎 點贊、收藏、關注

相關文章