我有一个NSArray
,其中每个对象都包含一个名为Card的特定类。卡有一种描述方法。我想使用description方法的输出连接数组中的所有对象,用空格分隔。是否有一个简单的做法,没有手动迭代NSArray
和操纵NSString
?
类似于以下制作的代码?
NSArray *myArray = getCards(); // fetches 10 items or more
NSString *myString = [myArray joinUsingDescriptionMethodSeparatedBy:@" "];
或
NSString *myString = [NSString stringFromArrayDescriptionMethods:myArray separatedBy:@" "];
当然,我可以自己实现这个,但我怀疑可能已经存在这样做的事情。
答案 0 :(得分:2)
我认为没有这样的方法。您也可以在NSString的类别中实现它。
抱歉,我发现了这个:
NSString * result = [[array valueForKey:@"description"] componentsJoinedByString:@""];
来自文档:
构造并返回一个NSString对象,该对象是结果 在数组的元素之间插入给定的分隔符。
- (NSString *)componentsJoinedByString:(NSString *)separator
答案 1 :(得分:0)
对每个NSArray项目的描述方法执行此操作:
NSMutableString * result = [[NSMutableString alloc] init];
for (NSObject * obj in array)
{
[result appendString:[NSString stringWithFormat:@" %@"[obj description]]];
}
NSLog(@"The concatenated string is %@", result);