我想检查我的数组是否为空或为空,并且在此基础上我想创建一个条件。
if(array == EMPTY){
//do something
}
我希望我清楚我要问的是什么,只需要检查我的数组是否为空?
问候
答案 0 :(得分:106)
if (!array || !array.count){
...
}
检查数组是否为零,如果不是,则检查它是否为空。
答案 1 :(得分:27)
if ([array count] == 0)
如果数组为nil,那么它也将为0,因为nil映射为0;因此检查数组是否存在是不必要的。
此外,您不应该像某些建议那样使用array.count。它可能是 - 工作 - 但它不是一个属性,如果他们知道属性和方法之间的区别,就会驱动任何读取代码的人。
更新:是的,我知道多年以后,伯爵现在正式成为财产。
答案 2 :(得分:10)
你可以这样尝试
if ([array count] == 0)
答案 3 :(得分:7)
只是真的很冗长:)
if (array == nil || array.count == 0)
答案 4 :(得分:5)
最佳表现。
if (array.firstObject == nil)
{
// The array is empty
}
使用大阵列的方法。
答案 5 :(得分:4)
if (array == (id)[NSNull null] || [array count] == 0) {
NSLog(@"array is empty");
}
答案 6 :(得分:2)
当nil映射到0,等于NO
时,最优雅的方式应该是
if (![array count])
不需要'=='运算符。
答案 7 :(得分:1)
你也可以使用这种测试 if(nrow> 0)。 如果您的数据对象不是正式的数组,它可能会更好。
答案 8 :(得分:1)
null和empty不是一回事,我建议你用不同的方式对待它们
if (array == [NSNull null]) {
NSLog(@"It's null");
} else if (array == nil || [array count] == 0) {
NSLog(@"It's empty");
}
答案 9 :(得分:1)
Swift 3
与最新版本的swift 3一样,将选项与 仍然可以将选项与==进行比较,因此检查可选数组是否包含值的最佳方法是: 根据数组计数 还有其他方法可以在这里查看
link to the answer if array?.isEmpty == false {
print("There are objects!")
}
if array?.count ?? 0 > 0 {
print("There are objects!")
}
答案 10 :(得分:0)
if (array == nil || array.count == 0 || [array isEqaul [NSNull Null]])
答案 11 :(得分:0)
在Swift 4中
if(array.isEmpty){
print("Array is empty")
}
else{
print("Array is not empty")
}