Kotlin 迴圈
當您處理陣列時,經常需要遍歷所有元素。
要遍歷陣列元素,請使用 for
迴圈和 in
運算子:
示例
輸出 cars
陣列中的所有元素:
val cars = arrayOf("Volvo", "BMW", "Ford", "Mazda")
for (x in cars) {
println(x)
}
您可以遍歷各種型別的陣列。在上面的示例中,我們使用了一個字串陣列。
在下面的示例中,我們遍歷一個整數陣列:
示例
val nums = arrayOf(1, 5, 10, 15, 20)
for (x in nums) {
println(x)
}
傳統的 For
迴圈
與 Java
和其他程式語言不同,Kotlin
中沒有傳統的 for
迴圈。
在 Kotlin
中,for
迴圈用於遍歷陣列、範圍以及其他包含可計數值的事物。
Kotlin 範圍
使用 for
迴圈,您還可以使用 ..
建立值的範圍:
示例
列印整個字母表:
for (chars in 'a'..'x') {
println(chars)
}
您還可以建立數字範圍:
示例
for (nums in 5..15) {
println(nums)
}
注意:第一個和最後一個值包含在範圍內。
檢查值是否存在
您還可以使用 in
運算子檢查值是否存在於範圍內:
示例
val nums = arrayOf(2, 4, 6, 8)
if (2 in nums) {
println("存在!")
} else {
println("不存在。")
}
示例
val cars = arrayOf("Volvo", "BMW", "Ford", "Mazda")
if ("Volvo" in cars) {
println("存在!")
} else {
println("不存在。")
}
中斷或繼續一個範圍
您還可以在範圍/for
迴圈中使用 break
和 continue
關鍵字:
示例
當 nums
等於 10
時停止迴圈:
for (nums in 5..15) {
if (nums == 10) {
break
}
println(nums)
}
示例
跳過迴圈中的 10
並繼續下一個迭代:
for (nums in 5..15) {
if (nums == 10) {
continue
}
println(nums)
}
Kotlin 函式
函式是隻有在呼叫時才執行的一段程式碼。
您可以將資料(稱為引數)傳遞給函式。
函式用於執行某些操作,它們也被稱為方法。
預定義函式
事實證明,您已經知道函式是什麼。在本教程中,您一直在使用它!
例如,println()
是一個函式。它用於向螢幕輸出/列印文字:
示例
fun main() {
println("Hello World")
}
建立您自己的函式
要建立您自己的函式,請使用 fun
關鍵字,並寫出函式名稱,後跟括號 ()
:
示例
建立一個名為 myFunction
的函式,該函式應該輸出一些文字:
fun myFunction() {
println("I just got executed!")
}
呼叫函式
現在您已經建立了一個函式,可以透過呼叫它來執行。
要在 Kotlin
中呼叫函式,寫出函式名,後跟兩個括號 ()
。
在下面的示例中,myFunction()
被呼叫時會列印一些文字(操作):
示例
fun main() {
myFunction() // 呼叫 myFunction
}
// 輸出 "I just got executed!"
如果您願意,可以多次呼叫一個函式:
示例
fun main() {
myFunction()
myFunction()
myFunction()
}
// I just got executed!
// I just got executed!
// I just got executed!
函式引數
資訊可以作為引數傳遞給函式。
引數在函式名稱之後指定,在括號內。您可以新增任意數量的引數,只需用逗號分隔。請注意,您必須指定每個引數的型別(Int
、String
等)。
下面的示例有一個函式,它接收一個名為 fname
的字串引數。當呼叫函式時,我們傳遞一個名字,它在函式內部用於列印全名:
示例
fun myFunction(fname: String) {
println(fname + " Doe")
}
fun main() {
myFunction("John")
myFunction("Jane")
myFunction("George")
}
// John Doe
// Jane Doe
// George Doe
當一個引數傳遞給函式時,它被稱為實參。所以,從上面的示例中:fname
是一個引數,而 John
、Jane
和 George
是實參。
多個引數
您可以擁有任意數量的引數:
示例
fun myFunction(fname: String, age: Int) {
println(fname + " is " + age)
}
fun main() {
myFunction("John", 35)
myFunction("Jane", 32)
myFunction("George", 15)
}
// John is 35
// Jane is 32
// George is 15
注意:使用多個引數時,函式呼叫必須具有與引數數量相同的實參,並且實參必須以相同的順序傳遞。
返回值
在上面的示例中,我們使用函式輸出一個值。在下面的示例中,我們將使用函式返回一個值並將其賦值給一個變數。
要返回一個值,請使用 return
關鍵字,並在函式的括號後指定返回型別(在此示例中為 Int
):
示例
具有一個 Int
引數和 Int
返回型別的函式:
fun myFunction(x: Int): Int {
return (x + 5)
}
fun main() {
var result = myFunction(3)
println(result)
}
// 8 (3 + 5)
使用兩個引數
示例
具有兩個 Int
引數和 Int
返回型別的函式:
fun myFunction(x: Int, y: Int): Int {
return (x + y)
}
fun main() {
var result = myFunction(3, 5)
println(result)
// 8 (3 + 5)
返回值的簡寫語法
還有一種更簡短的語法來返回值。您可以使用 =
運算子代替 return
,而無需指定返回型別。Kotlin
足夠聰明,可以自動找出返回型別:
示例
fun myFunction(x: Int, y: Int) = x + y
fun main() {
var result = myFunction(3, 5)
println(result)
// 8 (3 + 5)
最後
為了方便其他裝置和平臺的小夥伴觀看往期文章:
微信公眾號搜尋:Let us Coding
,關注後即可獲取最新文章推送
看完如果覺得有幫助,歡迎 點贊、收藏、關注