Kotlin简单入门1

122 阅读1分钟

kotlin编译型语言,可以通过虚拟机编译,不依赖于虚拟机(可以直接生成2进制机器码)

定义变量与类型推断

//1.编译时常量
const val num = 1;

fun main(args: Array<String>) {
    println(num);

    //2.val只读变量,并非绝对只读,某些情况会发生修改
    val str1: String = "hello world";

    println(str1)

    //类型推断
    var str2 ="test pre";

    print(str2)

}

字符串拼接

fun main(args: Array<String>) {
    val origin = "jack"
    val dest = "rose"
    println("$origin love $dest")

    val bl = false
    println("Answer is: ${if (bl) "我可以" else "对不起"}")

}

if...else和when替换

fun main(args: Array<String>) {
    var age1 = 4
    when (age1) {
    //in xx..yy有xx-yy闭区间取值范围的意思,range函数
        in 1..3 -> println("婴儿")
        in 4..12 -> println("青少年")
        else -> println(4)
    }

    var level = "青少年"
    var any = when (level) {
        "婴幼儿" -> "幼儿园"
        "青少年" -> "小学"
        else -> {
            println("其他")
        }
    }
    //当any等于其他的时候,是unit函数,个人理解相当于void
    println(any)
}

此外还有TODO函数,此函数代表永远执行不成功,返回类型nothing

方法定义以及具名函数

fun main(args: Array<String>) {
    var method1 = method1("zs", true)
    println(method1)

    //正常调用
    method2("ls",false)

    //具名函数参数(适用于参数较多的情况,可以不按传参顺序)
    method2(flag = true, name = "ww")
}
//修饰符 函数定义关键字 方法名 (形参名:形参类型...):返回值类型{方法体}
private fun method1(name:String,flag:Boolean):String{
    return "方法1调用成功"
}
//无修饰符 无返回值 方法
fun method2(name: String,flag: Boolean){
    println("$name $flag")
}

反引号函数命名

1.反引号反引号星号星号波浪号 特殊命名函数 2.主要应用在java和kotlin互相调用时,但二者有不同保留字,在调用时可以用``引住方法可以避免冲突