Verbinden Sie ein Array in Objective-C

129

Ich suche nach einer Methode, um aus einem NSMutableArray einen String zu machen. Gibt es etwas Vergleichbares zu dieser Ruby-Array-Methode?

>> array1 = [1, 2, 3]
>> array1.join(',')
=> "1,2,3"

Prost!

Codebeef
quelle

Antworten:

275
NSArray  *array1 = [NSArray arrayWithObjects:@"1", @"2", @"3", nil];
NSString *joinedString = [array1 componentsJoinedByString:@","];

componentsJoinedByString: verbindet die Komponenten im Array durch die angegebene Zeichenfolge und gibt eine Zeichenfolgendarstellung des Arrays zurück.

Jason Coco
quelle
17

Die Methode, die Sie suchen, ist componentsJoinedByString.

NSArray  *a = [NSArray arrayWithObjects:@"1", @"2", @"3", nil];//returns a pointer to NSArray
NSString *b = [a componentsJoinedByString:@","];//returns a pointer to NSString
NSLog(@"%@", b); // Will output 1,2,3
Rémy
quelle
5

NSArrayKlassenreferenz :

NSArray *pathArray = [NSArray arrayWithObjects:@"here",
    @"be", @"dragons", nil];
NSLog(@"%@",
    [pathArray componentsJoinedByString:@" "]);
Georg Schölly
quelle