为什么Intellij不遵循类型提示的null安全部分中的kotlin语法?

gal*_*rio 0 intellij-idea kotlin

简单的例子

简单的例子

Intellij使用!NotNull类型的类型提示.

但是,它违背了kotlin语法.为什么Intellij忽略了他们创建的kotlin的语法?

use*_*612 6

这是因为LocalDate属于Java API,而不属于Kotlin,并且now没有注释@NotNull或其他支持的注释之一(这里是完整的列表).正因为如此,科特林不知道如果返回值可能(不)null,所以它标志着同类型!(如描述在这里).

在第二个例子中,你"逼"类型不为空(如描述在这里),但这将导致异常被抛出,如果实际值实际上是null.