Come faccio a tirare un numero intero da un NSDictionary e metterlo in un intero?

StackOverflow https://stackoverflow.com/questions/1463027

  •  13-09-2019
  •  | 
  •  

Domanda

Ho un NSDictionary che è stato inizializzato con un plist che, tra le altre cose, il conteggio contenuta seguito da 32 e voglio ottenere il valore per il conteggio.

Come?

Io so come farlo in un oggetto tramite

[dictionaryObjectName objectForKey:@"count"]

Ma per me, il valore sto ottenendo non è un oggetto.

Se devo indicare un oggetto, quale sarebbe la migliore da utilizzare (FYI il valore sarà sempre senza segno) e ho bisogno di ottenere in un vero int.

Devo fare qualcosa di simile

NSNumber *num = [dictionaryObjectName objectForKey:@"count"];
int theValue = [num intValue];
[num release];

è il rilascio su num una buona cosa da fare dal momento che questo per un iPhone senza garbage collector?

È stato utile?

Soluzione

Si, si tira fuori come un NSNumber, poi prendete il int(eger)Value, ma non c'è bisogno di rilasciarlo. Non hai mantenere, alloc, o copiare il numero, in modo da non devono preoccuparsi di rilasciarlo.

Altri suggerimenti

e la forma più bello è:

int theValue = [[dictionaryObjectName objectForKey:@"count"] intValue];

Modifica

Da quando ho visto che la gente ancora arrivano a questa pagina, cerchiamo di chiarire che in questi giorni è sufficiente fare

int theValue = [dictionaryObjectName[@"count"] intValue];
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top