2010-02-05 22 views
5

Come stampare un elemento di matrice con un indice particolare in Objective-C? Il mio codice è simile al seguente:Come stampare un singolo elemento dell'array in Objective-C?

NSString *String=[NSString StringWithContentsOFFile:@"/User/Home/myFile.doc"]; 
NSString *separator = @"\n"; 
NSArray *array = [String componetntsSeparatedByString:separator]; 
NSLog(@"%@",array); 

sono in grado di stampare l'intero contenuto di un array in una volta, ma voglio assegnare l'elemento in ogni indice in una stringa, come ...

str1=array[0]; 
str2=array[1]; 
str3=array[0];...this continues 

Come posso fare questo?

+0

hey ho ricevuto la risposta ... mi dispiace .... è NSLog (@ "% @", [array objectAtIndex: index]); – suse

risposta

8

Si desidera il metodo objectAtIndex:. Esempio:

NSString *str1 = [array objectAtIndex:0]; 
NSString *str2 = [array objectAtIndex:1]; 
NSString *str3 = [array objectAtIndex:2]; 

Dal documentation:

objectAtIndex:
restituisce l'oggetto situato a dell'indice.

- (id)objectAtIndex:(NSUInteger)index 

Parametri
indice
Un indice entro i limiti del ricevitore.

Return Value
L'oggetto si trova a dell'indice.

Discussione
Se indice è oltre la fine della matrice (cioè, se indice è maggiore o uguale al valore restituito da count), un NSRangeException viene sollevata.

+0

hey ya .. grazie ... Ma abbiamo qualche funzione per sapere quanti elementi dell'array ci sono in un array. , perché ho bisogno di mettere ciascuno degli elementi dell'array in una stringa, quindi fare qualche operazione con la stringa, quindi prendere di nuovo il prossimo elemento dell'array nella stessa stringa ed eseguire qualche operazione sulla stringa ... allo stesso modo continua. quindi ho pensato di usare un ciclo for. , quindi per la condizione di terminazione in ciclo for, cosa dovrebbe essere scritto? aiutami. è come per (int n = 0; n <** ?? che cosa scrivere qui **; n ++) { NSString * string = [array objectAtIndex: n]; // fare qualche operazione } – suse

+0

ehi ... nessuno risponde plzzz – suse

+0

Ehi .. Nessun problema .. Ho trovato la soluzione :) – suse

0

se questo è solo per il debug, è possibile provare a utilizzare po <> nel gdb.

0

Come di clang versione 3.3, è possibile usare la notazione [index], così

NSString *str1 = array[0]; 

funzionerebbe ora. Vedi here per i dettagli.

Problemi correlati