j'utilise JSONModel pour capturer des données de JSON:Questions sur NSUInteger et int
@interface BBTCampusBus : JSONModel
@property (strong, nonatomic) NSString * Name;
@property (assign, nonatomic) NSUInteger Latitude;
@property (assign, nonatomic) NSUInteger Longitude;
@property (nonatomic) BOOL Direction;
@property (assign, nonatomic) NSUInteger Time;
@property (nonatomic) BOOL Stop;
@property (strong, nonatomic) NSString * Station;
@property (assign, nonatomic) NSInteger StationIndex;
@property (assign, nonatomic) NSUInteger Percent;
@property (nonatomic) BOOL Fly;
@end
Et je le code suivant:
for (int i = 0;i < [self.campusBusArray count];i++)
{
NSLog(@"index at nsuinteger - %@", (NSUInteger)self.campusBusArray[i][@"StationIndex"]);
NSLog(@"index - %lu", index);
if ([(NSUInteger)self.campusBusArray[i][[@"StationIndex"] ]== index)
{
numberOfBusesCurrentlyAtThisStation++;
}
}
En fait StationIndex
est un entier 1 ou 2 chiffres. Par exemple j'ai self.campusBusArray[i][@"StationIndex"]
== 4, et j'ai index
== 4, puis les deux NSLog tous sortie 4, mais il ne sautera pas dans le bloc if, ou le numberOfBusesCurrentlyAtThisStation++
ne sera pas exécuté. Quelqu'un peut-il me dire pourquoi?
Un grand merci! Maintenant, j'ai trouvé que j'ai fait cette erreur parce que j'ai oublié la valeur dans un dictionnaire doit être un objet, donc un NSUInteger sera encadré dans un NSNumber. Merci encore! – Caesar