Kotlin中如何从可空对象获取simpleName并单行实现类型名赋值
Kotlin可空类型获取类名的单行实现
针对可空类型无法直接通过::class获取类名的问题,这里提供几种简洁的单行写法:
写法一:安全调用+let函数
val operationName = pendingOperation?.let { it::class.simpleName } ?: "unknown operation"
写法二:直接安全调用::class
val operationName = pendingOperation?.::class?.simpleName ?: "unknown operation"
写法三:使用run函数
val operationName = pendingOperation?.run { this::class.simpleName } ?: "unknown operation"
这些写法的核心逻辑一致:通过?.安全调用确保仅当pendingOperation不为null时才获取其类名,再通过Elvis运算符?:在null场景下返回默认值"unknown operation",实现单行语句的需求。
内容的提问来源于stack exchange,提问作者Qwe Qwe
相关产品推荐
相关产品推荐

