在Kotlin中,"双重感叹"与"as"相同吗?

Woj*_*tek 13 kotlin

假设我们有变量之类的var text: String?.

当我想将它转换为非可空类型时,我可以使用:

  • text!!
  • text as String

他们的意思是一样的吗?

我知道,如果这些方法会抛出异常textnull.

Mih*_*x64 12

他们几乎是相同的,但第一个将抛出 KotlinNullPointerExcptionnull,而第二个将抛出TypeCastException.