Kotlin when
與編寫許多 if..else
表示式相比,您可以使用 when
表示式,它更易讀。
它用於選擇要執行的多個程式碼塊中的一個:
示例
使用星期幾的編號來計算星期幾的名稱:
val day = 4
val result = when (day) {
1 -> "Monday"
2 -> "Tuesday"
3 -> "Wednesday"
4 -> "Thursday"
5 -> "Friday"
6 -> "Saturday"
7 -> "Sunday"
else -> "Invalid day."
}
println(result)
// 輸出 "Thursday" (day為4)
when
表示式類似於 Java 中的 switch
語句。
工作原理如下:
- 對
when
變數(day
)進行一次評估。 - 將
day
變數的值與每個“分支”的值進行比較。 - 每個分支以一個值開始,後跟一個箭頭(
->
)和一個結果。 - 如果匹配,則執行相關聯的程式碼塊。
- 使用
else
指定如果沒有匹配要執行的程式碼。
在上面的示例中,day
的值為 4
,因此將列印 "Thursday"
。
Kotlin While 迴圈
迴圈可以在達到指定條件時執行一段程式碼塊。迴圈非常方便,因為它們節省時間,減少錯誤,並使程式碼更易讀。
Kotlin while
迴圈
while
迴圈透過條件為 true
時迴圈執行一段程式碼塊:
語法
while (condition) {
// 要執行的程式碼塊
}
在下面的示例中,只要計數器變數 i
小於 5
,迴圈中的程式碼將一遍又一遍地執行:
示例
var i = 0
while (i < 5) {
println(i)
i++
}
注意:不要忘記增加條件中使用的變數,否則迴圈將永遠不會結束。
Kotlin do..while
迴圈
do..while
迴圈是 while
迴圈的變體。這個迴圈會在檢查條件是否為 true
之前執行一次程式碼塊,然後只要條件為 true
,它就會重複執行迴圈。
語法
do {
// 要執行的程式碼塊
} while (condition);
下面的示例使用了 do/while
迴圈。即使條件為 false
,該迴圈也會至少執行一次,因為在測試條件之前會執行程式碼塊:
示例
var i = 0
do {
println(i)
i++
} while (i < 5)
以上是關於 Kotlin 中 when
表示式以及 while
和 do..while
迴圈的詳細介紹。這些功能使得編寫和理解條件和迴圈更加簡單和直觀。
Kotlin Break
and Continue
Kotlin Break
break
語句用於跳出迴圈。
在以下示例中,當 i
等於 4
時跳出迴圈:
var i = 0
while (i < 10) {
println(i)
i++
if (i == 4) {
break
}
}
Kotlin Continue
continue
語句用於在迴圈中的某一次迭代中跳過特定條件的程式碼,並繼續執行下一次迭代。
在以下示例中,跳過值為 4
的情況:
var i = 0
while (i < 10) {
if (i == 4) {
i++
continue
}
println(i)
i++
}
Kotlin Arrays
Kotlin 陣列
陣列用於在單個變數中儲存多個值,而不是為每個值建立單獨的變數。
要建立一個陣列,請使用 arrayOf()
函式,並在其中放置逗號分隔的值列表:
val cars = arrayOf("Volvo", "BMW", "Ford", "Mazda")
訪問陣列元素
您可以透過引用索引號(在方括號內)來訪問陣列元素。
在這個例子中,我們訪問 cars
陣列中第一個元素的值:
val cars = arrayOf("Volvo", "BMW", "Ford", "Mazda")
println(cars[0])
// 輸出 Volvo
注意:陣列索引從 0
開始:[0]
是第一個元素,[1]
是第二個元素,依此類推。
修改陣列元素
要更改特定元素的值,請引用索引號:
cars[0] = "Opel"
例如:
val cars = arrayOf("Volvo", "BMW", "Ford", "Mazda")
cars[0] = "Opel"
println(cars[0])
// 現在輸出 Opel 而不是 Volvo
陣列長度 / 大小
要查詢陣列中有多少個元素,請使用 size
屬性:
val cars = arrayOf("Volvo", "BMW", "Ford", "Mazda")
println(cars.size)
// 輸出 4
檢查元素是否存在
您可以使用 in
運算子來檢查陣列中是否存在元素:
val cars = arrayOf("Volvo", "BMW", "Ford", "Mazda")
if ("Volvo" in cars) {
println("存在!")
} else {
println("不存在。")
}
遍歷陣列
通常在處理陣列時,您需要遍歷所有元素。
您可以使用 for
迴圈遍歷陣列元素,關於這一點,您將在下一章學習更多。
以下示例輸出 cars
陣列中的所有元素:
val cars = arrayOf("Volvo", "BMW", "Ford", "Mazda")
for (x in cars) {
println(x)
}
以上是關於 Kotlin 中 break
、continue
以及基本陣列操作的詳細介紹。這些功能使得控制迴圈流程和管理多個資料項變得更加靈活和高效。
最後
為了方便其他裝置和平臺的小夥伴觀看往期文章:
微信公眾號搜尋:Let us Coding
,關注後即可獲取最新文章推送
看完如果覺得有幫助,歡迎 點贊、收藏、關注