Kotlin 學(xué)習(xí)筆記
購買了享學(xué)課堂的androidVip課程,工作一直很忙沒有時間學(xué)習(xí),最近抽時間學(xué)習(xí)一下,做一下學(xué)習(xí)筆記
fun main() {
/* 定義沒問題,調(diào)用不行 */
var method01 : () -> Unit
//method01() //不能調(diào)用, 沒有具體實(shí)現(xiàn)
var method02 : (Int, Int) -> Int
//method02(9,9)
//kotlin Any == Java Object
var method03 : (String,Double) -> Any?
//method03("str",1.2)
var method04 : (Int, Double, Long, String?) -> Boolean
//method04(1,2.0,3L,null)
var method06 : (Int, Int) -> Int = {num1,num2 -> num1 + num2}
println("method06:${method06(7,7)}")
var method07 = { num1 : Int, num2 : Int -> num1.toDouble() + num2.toDouble()}
println("method07:${method07(20,20)}")
var method08 : (String,String) -> Unit = {aStr,bStr -> println("a:$aStr ,b:$bStr")}
method08("大娃","二娃")
var method09 : (String) -> String = {str -> str}
println("method09:${method09("葫蘆兄弟")}")
var method10 : (Int) -> Unit = {
when(it){
1 -> println("大娃在此")
in 2..7 -> println("葫蘆兄弟在此")
else -> {
println("妖怪")
}
}
}
method10(8)
var method11 : (Int, Int, Int) -> Unit = { n1, n2, n3 ->
println("n1:$n1, n2:$n2, n3:$n3")
}
method11(8,88,888)
var method12 = { println("我就是method12函數(shù)") }
method12()
val method13 = {sex: Char -> if(sex == 'M') "男" else "女"}
println("method13:${method13('N')}")
//覆蓋函數(shù)
var method14 = { num1 : Int -> println("我是函數(shù)method14 num1==$num1")}
method14 = { println("覆蓋 num1==$it")}
method14(66)
//我想打印, 并且還要返回值 (必須遮行)
var method15 = {num: Int -> println("我想打印 num==$num")
num + 100
}
println("method:${method15(22)}")
}