- Registriert
- 29.10.09
- Beiträge
- 31
Hallo zusammen,
wieder mal hab ich eine "Neuling-Frage" was Objective C und Cocoa angeht. Konkret möchte ich gerne erfahren, wie ich ein NSArray durchmustern kann, welches Instanzen einer selbst geschriebenen Klasse enthält. Wenn ich meine Lektüre richtig verstanden habe, ist das mit der For-In-Schleife möglich.
Nun gut, ich poste mal, was ich dazu bisher umgesetzt habe:
Klasse "Person" mit folgenden Membern:
NSString* name;
NSInteger alter;
Person* bruder;
Die Set- und Getmethoden lasse ich mir in der Implementation über @synthesize korrekt erzeugen. Für die Ausgabe habe ich mir eine "-description" - Methode geschrieben, damit ich im NSLog über %@ als Rückgabewert von "Person"-Instanzen den Namen der Person als NSString-Instanz erhalte.
Nun habe ich eine Instanz von NSArray, in welches ich 3 Personinstanzen (nebst nil) hineintue und über die For-In-Schleife ausgeben möchte. Ist das möglich?
Danke im Voraus!
MarCus88
Edit: Ich hab mal ein bisschen herumprobiert nachdem ich ein Beispiel in Apples Onlineentwicklerinformationen gesehen habe. Mein Code schaut folgendermaßen aus:
Arrayerzeugung
Ausgabe der Personen im Programm
description - Methode, welche den Namen von "Person"-Instanzen zurückliefert und eigentlich im Programm an der Stelle %@ aufgerufen werden müsste (oder nicht?)
Ich erhalte keinen Compilerfehler, allerdings auch keine Ausgabe in der Console
wieder mal hab ich eine "Neuling-Frage" was Objective C und Cocoa angeht. Konkret möchte ich gerne erfahren, wie ich ein NSArray durchmustern kann, welches Instanzen einer selbst geschriebenen Klasse enthält. Wenn ich meine Lektüre richtig verstanden habe, ist das mit der For-In-Schleife möglich.
Nun gut, ich poste mal, was ich dazu bisher umgesetzt habe:
Klasse "Person" mit folgenden Membern:
NSString* name;
NSInteger alter;
Person* bruder;
Die Set- und Getmethoden lasse ich mir in der Implementation über @synthesize korrekt erzeugen. Für die Ausgabe habe ich mir eine "-description" - Methode geschrieben, damit ich im NSLog über %@ als Rückgabewert von "Person"-Instanzen den Namen der Person als NSString-Instanz erhalte.
Nun habe ich eine Instanz von NSArray, in welches ich 3 Personinstanzen (nebst nil) hineintue und über die For-In-Schleife ausgeben möchte. Ist das möglich?
Danke im Voraus!
MarCus88
Edit: Ich hab mal ein bisschen herumprobiert nachdem ich ein Beispiel in Apples Onlineentwicklerinformationen gesehen habe. Mein Code schaut folgendermaßen aus:
Code:
NSArray* myArray = [NSArray arrayWithObjects:firstPerson,secondPerson,thirdPerson,nil];
Code:
for(Person* persons in myArray)
{
NSLog(@"%@",persons);
}
Code:
-(NSString*)description
{
return [NSString stringWithFormat:@"%@",self.name];
}
Ich erhalte keinen Compilerfehler, allerdings auch keine Ausgabe in der Console
Zuletzt bearbeitet: