Kotlin入门学习记录
2023/11/25
变量
关键字:var val
var 变量 val 只读变量
语法:
//关键字 变量名 : 变量类型 = 值
var a : Int = 4
Java
Integer a = 4;
注意
KT中使用的都是引用变量不是JAVA中的基本变量
但是KT在编译时会转换为基本变量
由于KT变量类型自动推断的特性
也可省略变量类型,如下:
//关键字 变量名 = 值
var a = 4
when语句
相当于Java中的switch 但是KT中的when可以返回值
一般情况下有多个if else时建议改用when,如下:
val school = "小学"
val level = when(school){
"学前班" -> "幼儿"
"小学" -> "少儿"
"中学" -> "青少年"
else ->{
println("未知")
}
}
println(level)
Java代码:
String msg = "小学";
switch (msg){
case "学前班" :
System.out.println("幼儿");
break;
case "小学" :
System.out.println("少儿");
break;
case "中学" :
System.out.println("青少年");
break;
default:
System.out.println("未知");
}
函数
关键字:fun
//关键字 fun 函数名 参数列表 : 返回类型
private open fun add(a:Int,b:Int):Int{
return a + b
}
Java
private int add(int a , int b){
return a + b;
}
注意
KT函数的默认修饰符为public final
open 关键字代表可继承
具名函数
KT中具名函数可以在调用函数时使用
参数名=参数值 的方式传递,如下
fun main(){
add( b = 100 , a = 200 )
}
private open fun add(a:Int,b:Int):Int{
return a + b
}
默认参数
KT中也可以给函数加入默认参数
需要注意的时默认参数参数需要写到无默认参数的后边,如下
fun main(){
add(200)
}
private open fun add(a:Int,b:Int = 100):Int{
return a + b
}
Unit函数
当函数无返回类型时返回的就是Unit类型 在Java中则是void
Nothing类型
该类型为TODO语句中的返回类型 常用于无返回内容 但需要终止程序
其中TODO用于抛出异常,源码如下:
public inline fun TODO(reason: kotlin.String): kotlin.Nothing
反引号函数
用于书写特殊函数
以及调用与KT关键字冲突的Java方法调用如下:
fun main() {
`**2023_11_25**`()
test.`is`()
}
fun `**2023_11_25**`(){
println("Test")
}
调用的Java代码:
public class test {
public static void is(){
}
}
In range表达式
用于表达数值的范围
var age = 3
// 范围为 从0到3 并且包括0和3
if (age in 0..3){
println("婴幼儿")
}
// 范围为 从3到0 并且包括0和3
if (age in 3 downTo 0){
println("婴幼儿")
}
// 范围为 从0到3 并且包括0
if (age in 3 until 0){
println("婴幼儿")
}