如果我有一个代码片段像没有办法告诉科特林编译器之前调用函数已经没有了空支票
val myNullableString : String?
val resultingString = if (myNullableString.isNullOrBlank())
myNullDefaultString else String.format(myNullableString!!, someOtherString)
我不得不使用myNullableString!!
在String.format()
因为编译器将无法弄清楚该isNullOrBlank()
包括一个空检查。这是正确的还是有任何方法告诉编译器,一个函数会推断该实例不是null?
我觉得你的问题的代码是非常明显的。既然你知道'myNullableString'在else情况下不能为null,所以使用!!是安全的。我宁愿等待更新,而不是写一些额外的功能。 – BakaWaii