Kotlin学习笔记(七)类型转换

fun main(args: Array) {
//    val parent: Parent = Child()
    val parent: Parent = Parent()
//    val child: Child? = parent as Child //进行类型转换,如不成功则抛出异常
    val child: Child? = parent as? Child //进行类型转换,如不成功返回null
    println(child)

    if (parent is Child) {
        println(parent.name)
    }

    val string: String? = "Hello"
    if (string is String) { //智能转换1
        println(string.length)
    }
    if (string != null) { //智能转换2
        println(string.length)
    }
    println(string!!.length) //告诉编译器当前已确定字符串不为空
}
Kotlin学习笔记(七)类型转换_第1张图片
运行结果

你可能感兴趣的:(Kotlin学习笔记(七)类型转换)