报告使用 null 显式初始化的变量定义。
var v: T = null 共有三种不同类型:
v 是一个 可选值Option[T] 类型,这是习惯用法并且类型安全v 是一个 未初始化的值(必须分配一个值)_ (Scala 2) 或 scala.compiletime.uninitialized (Scala 3)
作为初始化器null 值)将提供两个快速修复:
null 替换为 _Option 并使用 None 初始化示例:
class Test {
var optional: String = null
var uninit: String = null
uninit = "initialized later"
}
在应用快速修复后:
class Test {
var optional: Option[String] = None
var uninit: String = _
uninit = "initialized later"
}