Je veux vérifier si mon tableau est vide ou nul et sur la base duquel je veux créer une condition par exemple.
if(array == EMPTY){
//do something
}
J'espère que je comprends ce que je demande, juste besoin de vérifier si mon tableau est vide?
cordialement
if (!array || !array.count){
...
}
Cela vérifie si le tableau n'est pas nul, et si non - vérifie s'il n'est pas vide.
if ([array count] == 0)
Si le tableau est nul, il sera également 0, puisque nil correspond à 0; Par conséquent, il est inutile de vérifier si le tableau existe.
En outre, vous ne devriez pas utiliser array.count comme certains le suggèrent. Cela peut fonctionner, mais ce n'est pas une propriété, et conduira toute personne qui lit vos données en code si elle sait faire la différence entre une propriété et une méthode.
UPDATE: Oui, je sais que des années plus tard, compter est maintenant officiellement une propriété.
tu peux essayer comme ça
if ([array count] == 0)
Juste pour être vraiment prolixe :)
if (array == nil || array.count == 0)
Meilleure performance.
if (array.firstObject == nil)
{
// The array is empty
}
Le chemin à parcourir avec les grands tableaux.
if (array == (id)[NSNull null] || [array count] == 0) {
NSLog(@"array is empty");
}
Comme nul correspond à 0, ce qui équivaut à NO
, la manière la plus élégante devrait être
if (![array count])
l'opérateur '==' n'est pas nécessaire.
Vous pouvez également effectuer ce type de test en utilisant If (nrow> 0) . Si votre objet de données n'est pas formellement un tableau, il peut fonctionner mieux.
Swift 3
Comme dans la dernière version de Swift 3, la possibilité de comparer les options avec> et <n'est pas disponible
Il est toujours possible de comparer les options avec ==, le meilleur moyen de vérifier si un tableau optionnel contient des valeurs est:
if array?.isEmpty == false {
print("There are objects!")
}
selon le nombre de tableaux
if array?.count ?? 0 > 0 {
print("There are objects!")
}
Il existe d'autres moyens également et peut être vérifié ici lien vers la réponse
null et empty ne sont pas les mêmes choses, je vous suggère de les traiter différemment
if (array == [NSNull null]) {
NSLog(@"It's null");
} else if (array == nil || [array count] == 0) {
NSLog(@"It's empty");
}
Dans Swift 4
if (array.isEmpty) {
print("Array is empty")
}
else{
print("Array is not empty")
}
if (array == nil || array.count == 0 || [array isEqaul [NSNull Null]])