提示信息

Kotlin 类型转换

韦醒言 已关注

Kotlin 提供了一些简洁和安全的方式进行类型转换。以下是几种常见的类型转换方法:

  1. 智能类型转换
    Kotlin 的编译器具备智能类型转换的能力。例如,如果你对一个变量进行 is 检查并返回 true,编译器会自动将该变量转换为相应的类型。

    1. fun demo(x: Any) {
    2. if (x is String) {
    3. println(x.length) // x 自动被转换为 String
    4. }
    5. }
  2. 显式转换

    • toInt(): 转换为 Int
    • toDouble(): 转换为 Double
    • toFloat(): 转换为 Float
    • toLong(): 转换为 Long
    • toShort(): 转换为 Short
    • toByte(): 转换为 Byte
    • toChar(): 转换为 Char
    1. val number = "123"
    2. val intNumber: Int = number.toInt()
    3. val doubleNumber: Double = number.toDouble()
  3. 安全转换 (as?):
    使用 as? 进行安全类型转换,如果转换失败,则返回 null

    1. fun demo(x: Any) {
    2. val str: String? = x as? String
    3. println(str?.length) // 如果 x 不是 String,str 为 null
    4. }
  4. 不安全转换 (as):
    使用 as 进行不安全的显式类型转换,如果类型不兼容会抛出 ClassCastException

    1. fun demo(x: Any) {
    2. val str = x as String
    3. println(str.length)
    4. }

建议使用安全转换来避免运行时错误,除非你非常确定类型兼容性。Kotlin 的类型系统和转换机制致力于减少常见的类型转换错误,提高代码的安全性和稳定性。

    遇到难题? "AI大模型GPT4.0、GPT" 是你的私人解答专家! 点击按钮去提问......
韦醒言 关注 已关注

最近一次登录:2024-11-10 20:31:01   

暂时还没有签名,请关注我或评论我的文章
×
免费图表工具,画流程图、架构图