Android 如何确定数组是否为空?
我有一个布尔标志,我必须func(有趣的动画和有趣的重新动画-这是两个可绘制图形之间的过渡)。 这是两个图形之间的过渡 这门课的理念是我有两面硬币。我在数组中添加了它。若数组为空,我只调用动画,若它不为空,我首先调用复活,然后调用动画 我的阵列:Android 如何确定数组是否为空?,android,arrays,kotlin,Android,Arrays,Kotlin,我有一个布尔标志,我必须func(有趣的动画和有趣的重新动画-这是两个可绘制图形之间的过渡)。 这是两个图形之间的过渡 这门课的理念是我有两面硬币。我在数组中添加了它。若数组为空,我只调用动画,若它不为空,我首先调用复活,然后调用动画 我的阵列: var arrayShape: Array<Drawable>? = null 这是标志法 fun isArrayEmpty(array : Array<Drawable>):Boolean { return arr
var arrayShape: Array<Drawable>? = null
这是标志法
fun isArrayEmpty(array : Array<Drawable>):Boolean {
return array.size > 1 && array[0] !=null
}
当我运行项目并单击fShape时,它会显示NPE(kotlin.KotlinNullPointerException)
并且project已停止您必须对数组使用安全调用,因为它可以为空。当它为空时,还提供一个默认值
if(arrayShape?.isEmpty() ?: true)
您必须对数组使用安全调用,因为它可以为null。当它为空时,还提供一个默认值
if(arrayShape?.isEmpty() ?: true)
你可以这样使用。。。因为null不可能,也不适合列表或任何集合(没有数组),所以可以借助ArrayList实现您的解决方案
val arrayShape = ArrayList<Drawable>()
if (arrayShape.isEmpty())
Toast.makeText(this, "Array is Empty", Toast.LENGTH_LONG).show()
else
Toast.makeText(this, "Array is not Empty", Toast.LENGTH_LONG).show()
val arrayShape=ArrayList()
if(arrayShape.isEmpty())
Toast.makeText(这个“数组为空”,Toast.LENGTH\u LONG.show()
其他的
Toast.makeText(这个“数组不是空的”,Toast.LENGTH\u LONG.show()
您可以这样使用。。。因为null不可能,也不适合列表或任何集合(没有数组),所以可以借助ArrayList实现您的解决方案
val arrayShape = ArrayList<Drawable>()
if (arrayShape.isEmpty())
Toast.makeText(this, "Array is Empty", Toast.LENGTH_LONG).show()
else
Toast.makeText(this, "Array is not Empty", Toast.LENGTH_LONG).show()
val arrayShape=ArrayList()
if(arrayShape.isEmpty())
Toast.makeText(这个“数组为空”,Toast.LENGTH\u LONG.show()
其他的
Toast.makeText(这个“数组不是空的”,Toast.LENGTH\u LONG.show()
看起来您从未将arrayShape
设置为除null以外的任何值。不要使用除非你100%确定它不是空的,否则代码>在某个东西上。此外,array[0]!=null
将始终为true,因为Drawable
不是可为null的类型(除非它是可为null类型的一个棘手别名)。看起来您从未将arrayShape
设置为null以外的任何值。不要使用除非你100%确定它不是空的,否则代码>在某个东西上。此外,array[0]!=null
将始终为true,因为Drawable
不是可为null的类型(除非它是可为null类型的复杂别名)。