kt語言實例講解?
Kotlin 基礎語法Kotlin 文件以 .kt 為后綴。
包聲明
代碼文件的開頭一般為包的聲明:
package com.runoob.main
import Java.util.*
fun test() {}
class Runoob {}
kotlin源文件不需要相匹配的目錄和包,源文件可以放在任何文件目錄。
以上例中 test() 的全名是 com.runoob.main.test、Runoob 的全名是 com.runoob.main.Runoob。
如果沒有指定包,默認為 default 包。
默認導入
有多個包會默認導入到每個 Kotlin 文件中:
kotlin.*
kotlin.annotation.*
kotlin.collections.*
kotlin.comparisons.*
kotlin.io.*
kotlin.ranges.*
kotlin.sequences.*
kotlin.text.*
函數定義
函數定義使用關鍵字 fun,參數格式為:參數 : 類型
fun sum(a: Int, b: Int): Int { // Int 參數,返回值 Int
return a + b
}
表達式作為函數體,返回類型自動推斷:
fun sum(a: Int, b: Int) = a + b
public fun sum(a: Int, b: Int): Int = a + b // public 方法則必須明確寫出返回類型
無返回值的函數(類似Java中的void):
fun printSum(a: Int, b: Int): Unit {
print(a + b)
}
// 如果是返回 Unit類型,則可以省略(對于public方法也是這樣):
public fun printSum(a: Int, b: Int) {
print(a + b)
}
可變長參數函數
函數的變長參數可以用 vararg 關鍵字進行標識:
fun vars(vararg v:Int){
for(vt in v){
print(vt)
}
}
// 測試
fun main(args: Array<String>) {
vars(1,2,3,4,5) // 輸出12345
}
lambda(匿名函數)
lambda表達式使用實例:
// 測試
fun main(args: Array<String>) {
val sumLambda: (Int, Int) -> Int = {x,y -> x+y}
println(sumLambda(1,2)) // 輸出 3
}