var val
var 可修改的变量
val 不可修改的变量
我们可以不写类型,让 kotlin 自行推断
// 类型推断
var a = 123
// 直接指定类型
var a:Number = 123
编译时常量
只能写在函数外面;
只读变量不一定完全只读;
const val a = 100
range 语法
0..3
表示范围 0<=x<=3
val a:Number = 10
if(a in 0..20){
println("god")
}
when 表达式
可以取代 ifelse 或者 switch
判断括号内的条件是否符合表达式,如果符合就用一个箭头链接结果
fun main(){
val gender = 3
val result:Any = when(gender){
1->"male"
2->"female"
else->{
println("a ")
}
}
println(result)
}
字符串模板
python 也可以这么写,但是和 python 不同的是,模板中的字符串不需要转换成不同类型的引号
fun main(){
val str:String = "str"
// 全用双引号也可以正常识别
println("answer = $str + ${str+"123"}")
}
函数基本结构
函数可以有默认值;
调用函数时如果使用具体名字,那么就不需要按照顺序;
函数末尾的冒号后面接着要返回的值的类型,如果什么都不返回就不写
返回值类型 Unit 等同于 java 中的 void,但是我们没有必要写,kotlin 会在编译时自动识别的!
fun main(){
println(demo(name = "happy"))
}
private fun demo(name:String, age:Int = 10):String{
return name
}
TODO
直接抛出异常,他接收一个参数表示异常原因
TODO 函数返回一个 Nothing 类型(也就是异常类型)
TODO("this is a exception")
反引号函数
定义函数名称时加个反引号就可以输入特殊值了(譬如关键词和保留字)
调用该特殊名称函数时也应该使用反引号
fun main(){
`public`()
}
private fun `public`(){
println("function")
}
版权声明:本文为delete_you原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。