comment puis-je vérifier NSNumber est nulle?
NSDictionary *regionDict = (NSDictionary *) region;
NSNumber *lat = [regionDict objectForKey:@"lat"];
//[latitude addObject:lat];
NSNumber *lng = [regionDict objectForKey:@"lng"];
//[longitude addObject:lng];
NSLog(@"%@%@%@",lat,lng,titles);
if(lat == [NSNumber numberWithFloat:0.00] && lng == [NSNumber numberWithFloat:0.00])
{
NSLog(@"%@%@%@",lat,lng,titles);
}
else
{
CLLocationCoordinate2D coord;
coord.latitude =lat.doubleValue;
coord.longitude =lng.doubleValue;
MapViewAnnotation *annotation =[[MapViewAnnotation alloc]initWithTitle:titles AndCoordinate:coord];
[self.mapView addAnnotation:annotation];
}
si la condition n'est pas satisfaite à cause de NSNumber pas de vérifier avec la valeur null.
quel est le moyen que je puisse vérifier?
Dites-moi manières possibles.. pour la vérification de la valeur null.
Où est la région dictionnaire en venir? Exactement ce que fait le premier NSLog impression?
OriginalL'auteur Priyank Gandhi | 2014-03-24
Vous devez vous connecter pour publier un commentaire.
Vous pouvez vérifier si un objet est null en faisant
Mais si vous voulez vérifier si un flotteur en boîte dans un
NSNumber
est à zéro, vous pouvez faireYep, vous devriez vérifier pour
NSNull
avant unboxing.Merci beaucoup!! @Cyrille
OriginalL'auteur Cyrille
J'ai été vérifier si NSDecimalNumber était null à l'aide de:
C'est génial de travailler pour moi.
Cela fonctionne dans la plupart des cas, mais pas, par exemple, lors de l'observation d'une propriété ou d'une Base de Données d'attribut. Le changement dictionnaire transmis par observeValueForKeyPath:ofObject:modification:contexte: peut contenir une valeur null n'évaluera pas de 'néant'. Ainsi, les NSNumber *oldNumber = [modifier valueForKey:NSKeyValueChangeOldKey];' va passer l' (oldNumber != néant) test mais alors quelque chose comme " oldNumber.integerValue' lèvera une exception.
OriginalL'auteur staticnz
OriginalL'auteur Priyank Gandhi
Je ne suis pas tout à fait clair ce que vous voulez vérifier. En fonction de vos données JSON, vous obtiendrez l'une des opérations suivantes:
Noter que d'essayer de lire doubleValue plante si les données JSON était "nul", de sorte que les besoins de vérifier d'abord. En comparant
n'est pas d'aller travailler, parce que juste compare les pointeurs d'objet. Serait un très grand hasard si ce n'était en fait le même objet.
==
contrôles d'identité, mais de vérifier si les objets sont égaux, il peut ne fonctionner que dans certains cas limites (les littéraux de chaîne). utilisation[myObject isEqualToNumber:@(0.0)]
à la place.Je préfère vérifier [myObject isEqual:[NSNull null]] contre l'utilisation de ==, pour plus de cohérence.
OriginalL'auteur gnasher729
OriginalL'auteur thatzprem