Come trovare il più grande valore da NSArray
di NSDictionary
?
Ecco il mio codice,
NSDictionary *d1 = [NSDictionary dictionaryWithObject:[NSNumber numberWithInt:35] forKey:@"data"];
NSDictionary *d2 = [NSDictionary dictionaryWithObject:[NSNumber numberWithInt:52] forKey:@"data"];
NSArray *array = [NSArray arrayWithObjects:d1, d2, nil];
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"SELF.data == %@.@max.data", array];
Tuttavia questo a volte dà risultati errati. Mi sto perdendo qualcosa?
risposte:
9 per risposta № 1Prova in questo modo per i valori NSNumber
NSNumber *max = [array valueForKeyPath:@"@max.data"];
e
NSNumber *max = [array valueForKeyPath:@"@max.data.floatValue"];
per i valori misti NSString / NSNumbers.