kotlin as 和 is 的使用

kotlin 中有类型检测与类型转换章节,今天回顾看到这里记录下 详细的地址如下

类型检测与类型转换 · Kotlin 官方文档 中文版

as 的功能是类型转换

复制代码
val x: String = y as String

这个y就是String 类型,不过,这个写法可能存在问题,

as转换类型的时候null 不能转换,所以当y为null的时候就报错了

这个时候可以在as 后面添加 ?

复制代码
val x: String? = y as? String

as 是"不安全的"类型的转换

as?是"安全的"类型转换

is 的功能是类型检测

复制代码
fun demo(x: Any) {
    if (x is String) {
        print(x.length) // x 自动转换为字符串
    }
}
相关推荐
yunyun321231 天前
嵌入式C++驱动开发
开发语言·c++·算法
左左右右左右摇晃1 天前
Java笔记 —— 值传递与“引用传递”
java·开发语言·笔记
chushiyunen1 天前
python语法-继承、方法命名、单例等
开发语言·python
沐知全栈开发1 天前
Chart.js 饼图详解
开发语言
码云数智-大飞1 天前
迈向 99.99%:高可用系统架构的哲学与实战
开发语言
Amnesia0_01 天前
类型转换和特殊类
开发语言·c++
always_TT1 天前
static关键字初探
java·开发语言
android_cai_niao1 天前
OkHttp 使用教程:从入门到精通(Kotlin)
okhttp·kotlin
格林威1 天前
C++ 工业视觉实战:Bayer 图转 RGB 的 3 种核心算法(邻域平均、双线性、OpenCV 源码级优化)
开发语言·c++·人工智能·opencv·算法·计算机视觉·工业相机
2401_851272991 天前
C++中的模板方法模式
开发语言·c++·算法