小编Ota*_*ann的帖子

Scala 3 显式 Nulls 标志使字符串操作变得非常不可用

当使用新的 Scala 3 的 flag 时-Yexplicit-nulls,每个没有显式非 null 注释的 Java 代码都被视为可为 null,因此每个不返回基本类型的 Java 方法都会T有效返回T | Null

问题:在 Scala 中,String 只是java.lang.String. 由于核心 Java 不包含任何有关可为空性的注释,因此 Scala 3 将 String 方法的返回类型视为可为空。

示例:(通过 Scala REPL / sbt 控制台和 Gradle 进行尝试)

scala> val bla: String = null // check whether the compiler option is turned on
-- Error:
1 |val bla: String = null
  |                  ^^^^
  |                  Found:    Null
  |                  Required: String
scala> val bla: String …
Run Code Online (Sandbox Code Playgroud)

scala nullable scala-3

8
推荐指数
1
解决办法
685
查看次数

标签 统计

nullable ×1

scala ×1

scala-3 ×1