我试图在一行打印出一个NSSet,逗号分隔,但没有尾随的逗号或空格.我怎样才能做到这一点?
我知道这适用于数组:
NSMutableString *outputStringArray = [[NSMutableString alloc] init];
NSMutableArray *myArray = [[NSMutableArray alloc] initWithCapacity:10];
for (int k = 0; k < [myArray count]; k++) {
[outputStringArray appendFormat:@"%@, ", [myArray objectAtIndex:k]];
}
NSLog(@"%@", [outputStringArray substringToIndex:[outputStringArray length] - 2]);
Run Code Online (Sandbox Code Playgroud)
但由于集合没有索引,我无法做到这一点.
谢谢
das*_*ght 10
你总是可以从一个集合中创建一个数组,如下所示:
NSArray *myArray = [mySet allObjects];
Run Code Online (Sandbox Code Playgroud)
之后,你可以得到你的字符串componentsJoinedByString::
NSString *str = [myArray componentsJoinedByString:@", "];
Run Code Online (Sandbox Code Playgroud)
当然,您可以通过类似于帖子中的简单循环来实现相同的效果:
BOOL isFirst = YES;
for (id element in mySet) {
if (!isFirst) {
[outputStringArray appendString:@", "];
} else {
isFirst = NO;
}
[outputStringArray appendFormat:@"%@", element];
}
Run Code Online (Sandbox Code Playgroud)
将集合中的对象作为数组获取并使用 componentsJoinedByString:
NSSet *myset = ....;
NSString *joinedString = [[myset allObjects] componentsJoinedByString:@", "];
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1984 次 |
| 最近记录: |