Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/kotlin/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Kotlin 不使用安全呼叫接线员_Kotlin - Fatal编程技术网

Kotlin 不使用安全呼叫接线员

Kotlin 不使用安全呼叫接线员,kotlin,Kotlin,假设我们将一个可为null的字符串指定为null 但在代码下面的某个地方,我们给它一个值 我叫str.Length 它说如果没有safe call操作符(?),我们就不能调用这个方法,我的意思是,既然我们已经知道它不再是null,因为我们有一个值,我就不能调用length方法吗?如果你确定这个值不是null,你可以调用它 value!!.length 或使用默认值,例如: value?.length ?: 0 // default value will be 0 value?.length ?

假设我们将一个可为null的字符串指定为null 但在代码下面的某个地方,我们给它一个值 我叫str.Length


它说如果没有safe call操作符(?),我们就不能调用这个方法,我的意思是,既然我们已经知道它不再是null,因为我们有一个值,我就不能调用length方法吗?如果你确定这个值不是null,你可以调用它

value!!.length
或使用默认值,例如:

value?.length ?: 0 // default value will be 0
value?.length ?: return // return if value is null

如果不为null,您可以通过检查来查找方法调用。您还可以使用范围函数,如
possibleNullString.let{it->//字符串不为null}?://字符串为null