Objective-C und das Cocoa-Framework/ Objective-C/ Zeichenketten
Aus Wikibooks
[Bearbeiten] NSString
Es reicht natürlich nicht, wenn wir uns bloß Zahlen und einzelne Buchstaben merken können. Oftmals will man sich eine Farbe, einen Text oder noch viel kompliziertere Dinge merken können. Das ist mit Objective-C auch möglich, allerdings reichen uns hierfür die alten Typen aus der Sprache C nicht mehr aus.... oder zumindest dann nicht mehr, wenn wir uns nicht mit unnötigem Aufwand herumquälen möchten. Cocoa stellt uns nun eine ganze Menge dieser Typen in Form von Klassen (zu denen wir später noch kommen) zur Verfügung. Diese Typen verhalten sich anders, als die Basis-Typen, die wir im letzten Abschnitt kennengelernt haben, darauf werden wir aber später noch gesondert eingehen. Zeichenketten, so genannte Strings, sind ein solcher Typ. Wir können eine String-Variable zunächst genau so behandeln, wie die Variable eines Basistyps. Wir beginnen ein neues Konsolenprojekt:
#import <Foundation/Foundation.h> void gibMalWasZurueck(NSString * derText); NSString * gibMalWasAnderesZurueck(NSString * derText); int main (int argc, const char * argv[]) { NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init]; NSString * meinString; meinString = @"Hallo Welt!"; NSLog(meinString); gibMalWasZurueck(@"ein Text"); NSLog(gibMalWasAnderesZurueck(@"noch ein Text")); [pool drain]; return 0; } void gibMalWasZurueck(NSString * derText) { NSLog(derText); } NSString * gibMalWasAnderesZurueck(NSString * derText) { return derText; }
2009-08-23 00:12:26.737 ConsoleTest2[2378:10b] Hallo Welt!
2009-08-23 00:12:26.739 ConsoleTest2[2378:10b] ein Text
2009-08-23 00:12:26.740 ConsoleTest2[2378:10b] noch ein Text
Der einzige Unterschied zu normalen Variablen ist ein Sternchen zwischen dem Typ und dem von uns ausgesuchten Namen. In den String haben wir eine Zeichenkette geschrieben, die üblicherweise mit einem @ beginnt und in Anführungszeichen gefasst ist.
Im Dritten Teil dieses Buches werden wir noch viel mehr über NSString lernen, für unsere Zwecke wird dies aber erst einmal reichen.
[Bearbeiten] Arrays
Oft braucht man mehr als nur einzelne Zahlen, Buchstaben oder Zeichenketten. Man will aber auch nicht für hunderte von Variablen ein eigene Definition schreiben. Manchmal will man auch mehrere Variablen in einem Verbund zusammenfassen und gleich mehrere ändern. Um solche Verbünde an Variablen zu erhalten, verwenden wir bei den Grundtypen so genannte Arrays. Auch Arrays sind nicht sonderlich kompliziert zu verstehen. Hier ein Beispiel:
Nächstes Kapitel - Schleifen und Verzweigungen