Kotlin面试题更新 2026-08-05

请解释Kotlin中Elvis操作符?:的功能,并说明它的使用方式。

技术原理Kotlin

考察说明

考查对Kotlin空安全机制中Elvis操作符的理解与应用。

回答思路

  1. 【回答框架 1】Elvis操作符?:是Kotlin空安全的一部分,用于提供默认值。当左侧表达式非空时返回左侧值,否则返回右侧表达式。
  2. 【回答框架 2】使用场景:变量可能为null时,避免显式if判断。例如val name = str ?: "default",若str非空则取str,否则取"default"。
  3. 【回答框架 3】可与let、run等作用域函数结合,简化空值处理。但要注意右侧表达式只有在左侧为空时才会求值,具有惰性求值特性。
  4. 【关键点 1】Elvis操作符返回左侧非空值,否则返回右侧默认值。
  5. 【关键点 2】常用于提供默认值、安全调用链中的兜底。
  6. 【关键点 3】右侧表达式惰性求值,仅在左侧为null时执行。
  7. 【易错点 1】若右侧表达式有副作用,仅在左侧为null时执行,避免误解。
  8. 【易错点 2】Elvis操作符不替代异常处理或复杂逻辑,适用于简单默认值场景。