作用 更加流畅地,一气呵成进行类型转换 代码 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 /** * 将一种类型转换为另一种类型,如果类型转换不允许,返回null * */ inline fun <reified T> Any.asType(): T? { return if (this is T) { this } else { null } } fun testAsType(charSequence: CharSequence?) { //书写不流畅,需要回到开始出增加() (charSequence as? String)?.length //一气呵成书写 charSequence?.asType<String>()?.length } reified 使用Kotlin Reified 让泛型更简单安全