我的Kotlin學習之旅(二)
阿新 • • 發佈:2019-01-22
在Kotlin語言中文站學習了一段時間,這是第二次看文件,第一次簡單的看了一遍,等真正要用的時候又發現不真正實踐的話,學習的效果並沒有很好,所以在第二遍看文件的時候,自己手寫做了一遍筆記,然後接著寫這個學習之旅的部落格
首先是Kotlin的基本語法:
1.定義函式:
fun sum(x: Int, y: Int): Int {
return x + y
}
這個函式有兩個Int型別的引數,返回的結果是Int型別
簡化版(自推導型返回值):
fun sum(x: Int, y: Int) = x + y
當函式的返回型別是void的時候,用的是Unit
fun printSum(x: Int , y: Int): Unit {
println(x + y)
}
同時Unit可以省略
fun printSum(x: Int, y: Int) {
println(x + y)
}
2.定義區域性變數
在kotlin中變數分為兩種:val 和 var
val是常量的意思,它不可以被重新賦值,只能被賦值一次!
var代表的是變數的意思
val a: Int = 1
當對a進行重新賦值的時候,程式碼會飄紅
var b: Int = 2;
b = 3;
var可以被重新賦值
3.使用條件表示式
if表示式的寫法有但不限於以下幾種:
fun max(x: Int, y: Int): Int {
if (x > y) {
return x
} else {
return y
}
}
或者
fun max(x: Int, y: Int): Int {
return if(x > y) x else y
}
或者
fun max(x: Int, y: Int) = if(x > y) x else y
4.使用for迴圈
val list = listOf("a","b" ,"c")
for (item in list){
//自己的邏輯
}
又或者可以這樣寫:
for (index in list.indices){
//自己的邏輯
}
5.使用when表示式
when表示式是java中沒有的,它的作用和switch類似
fun describe(obj: Any): String =
when(obj){
1 -> "這是數字"
"hello" -> "這是字串"
else -> "不知道"
}
kotlin中,Any是所有類的父類,但是不等同於java中的Object,這一點要注意
when表示式必須要有else,因為它是個表示式,所以可以像上面那樣寫
6.使用區間(range)
if(x in 1..10){
//自己的邏輯
}
意思是 x 是否在 [1,10]這個區間內
if(x !in 1..10)
代表的是相反的意思,x不在這個區間內
for (x in 1 until 10){
//自己的邏輯
}
這裡需要注意的是,這個區間表示的是[1,10),注意是不包括尾巴的
for (x in 10 downTo 0){
//自己的邏輯
}
for迴圈從10開始,到0 ,區間是[10,0]
基本語法就到這裡了