kotlin的常见空检查

Kotlin 复制代码
fun main() {
    var name: String? = null  // name字段可空
    println(name.toString()) // null
    //val str: String = name!!.toString() // !!为非空断言。可以将可空类型强转为非空类型。 这里报错: Exception in thread "main" java.lang.NullPointerException
    var str2 = name?.toString() // name为空则不做处理直接返回null
    println(str2.toString()) // null
    
    name = "9527"
    str2 = name?.toString()
    println(str2.toString()) // 9527
    
    name = null;
    var str3 = name?.toInt() ?: -1 // ?:为可空表达式提供默认值
    println(str3) // -1
}

运行:

ok. kotlin的空检查的语法感觉和TS的语法差不多。

相关推荐
咸鱼翻身小阿橙11 分钟前
多线程解析
java·开发语言
AOwhisky21 分钟前
Python 学习笔记(第四期)——字符串:格式化、操作与文本处理——核心知识点自测与详解
开发语言·笔记·python·学习·列表·元组·字典
stevenzqzq1 小时前
app性能日志工具
android
DB哥讲数据库1 小时前
【最新】MySQL9.7安装教程:图文详解(附MySQL安装包)
android·mysql·adb
@@@@@@@@541 小时前
JavaScript 的缺点与 TypeScript 的弥补
开发语言·javascript·typescript
এ慕ོ冬℘゜1 小时前
深度解析 JavaScript:赋予 Web 灵魂的“全栈语言”
开发语言·前端·javascript
IT乐手1 小时前
Android 写本地日志工具类
android·java
汤米粥1 小时前
Python调用百度搜索触发安全验证
开发语言·python
影寂ldy2 小时前
C# 五大加密算法全套实战(AES/DES对称、RSA非对称、MD5/SHA256哈希)
开发语言·c#·哈希算法
罗超驿2 小时前
6.Java LinkedList深度解析:从链表原理到源码实践
java·开发语言·链表