Kotlin 语法 (笔记 一)
1.基本使用
-
变量
声明:var 变量, val 常量 只能初始化赋值一次
var a = 1 //类型可以不指定 var a: Int; //初始化未赋值的时候 必须要指定类型 a = 1;
-
函数
//a b 参数 Int 返回类型 fun test(a: Int,b: Int :String): Int{ return a+b; }
-
返回值类型:
明确类型(如果 函数声明为 public 则必须添加返回类型)
Unit(无返回值类型,无返回值 默认可以不加) 类似java 中的void关键字
-
函数体为表达式
-
�自动判断返回值类型
fun test(a: Int ,b :Int) = a + b
-
-
可变的长参数函数 使用 vararg 关键字
fun test(varage v :Int)
-
lambda
var lambda:(Int ,Int) -> Int = (x,y -> x+y) var lambda = {x:Int,y:Int -> x+y}
-
null检查机制
fun nullTest(arg: String?): Int? { //类型后面 ? 设置String 可以为空 var arg1: String? = null; if(arg !=null){ Log.d(tag,arg); } if(arg1 == null){ Log.d(tag,"arg1 null"); } var arg2 = null; //变量后面!! 会抛异常 var arg3 = arg2!!.toInt() Log.d(tag,arg3.toString()); var arg4 = null; //变量后面加?会返回null var arg5 = arg4?.toInt(); Log.d(tag,arg5.toString()); var arg6 = null; //返回值后面加 ?: 会返回冒号后面的值 var arg7 = arg6?.toInt()?: -1 Log.d(tag,arg7.toString()); //返回可能为空时 返回参数后面也要加? return null; }
-
类型转换
-
is 关键字, 类似 java instanceof
区别在 is 会自动做类型转换
-