如何将NSArray输出连接到用逗号分隔的NSString

han*_*Dev 2 iphone objective-c nsarray ios

我正在使用以下代码尝试将数组输出连接到NSString.

NSArray  *array1 = [NSArray arrayWithObjects:[item objectForKey:@"id"], nil];
NSString *joinedString = [array1 componentsJoinedByString:@","];

NSLog(@"joinedString is %@", joinedString);
Run Code Online (Sandbox Code Playgroud)

我想这个输出连接的字符串为:join string是55,56,57,66,88 ......等...输出的时刻是:

2013-03-05 13:13:17.052  [63705:907] joinedString is 55
2013-03-05 13:13:17.056  [63705:907] joinedString is 56
2013-03-05 13:13:17.060  [63705:907] joinedString is 57
2013-03-05 13:13:17.064  [63705:907] joinedString is 66
Run Code Online (Sandbox Code Playgroud)

Pra*_*n S 10

您可能正在循环中运行join方法.

我想这就是你想要的.

NSMutableArray * array1 = [NSMutableArray array]; // create a Mutable array

for(id item in items){
      [array1 addObject:[item objectForKey:@"id"]]; // Add the values to this created mutable array
}

NSString *joinedString = [array1 componentsJoinedByString:@","];

NSLog(@"joinedString is %@", joinedString);
Run Code Online (Sandbox Code Playgroud)


Ano*_*dya 7

你可以这样做,

举个例子

NSArray *array=@[@"A",@"B",@"C"];
NSString *string=[array componentsJoinedByString:@","];
NSLog(@"%@",string);
Run Code Online (Sandbox Code Playgroud)

输出是:

A,B,C
Run Code Online (Sandbox Code Playgroud)