的阵列分隔的字符串所以我有与一群在它的对象的的NSMutableArray。我想创建一个逗号分隔的每个对象的id值的字符串。Objective-C的最简单的方式来创建逗号从对象
回答
使用NSArray
实例方法componentsJoinedByString:
。
- (NSString *)componentsJoinedByString:(NSString *)separator
。
例子:
NSString *joinedComponents = [array componentsJoinedByString:@","];
如果您正在寻找在雨燕相同的解决方案,您可以使用此:
var array:Array<String> = ["string1", "string2", "string3"]
var commaSeperatedString = ", ".join(array) // Results in string1, string2, string3
为了确保您的数组不包含零值,你可以使用过滤器:
array = array.filter { (stringValue) -> Bool in
return stringValue != nil && stringValue != ""
}
这似乎并不为的NSMutableArray在斯威夫特工作。搜索Google尚未透露答案。 – ultrageek 2015-03-08 22:52:40
@Twan谢谢你,你的回答(几乎)正是我正在寻找的......几乎是因为我需要连接可选的字符串,其中一些可能是零(所以我不想连接它们),但是这个解决方案不接受可选项字符串,它需要解开它们......也许过去有类似的问题,如果可以的话,你能帮助我吗? – cdf1982 2015-04-12 10:31:34
@ cdf1982我已经更新了我的答案。您可以使用过滤器方法执行此操作。 – Antoine 2015-04-12 15:07:30
从Array创建字符串:
-(NSString *)convertToCommaSeparatedFromArray:(NSArray*)array{
return [array componentsJoinedByString:@","];
}
从字符串创建阵列:
-(NSArray *)convertToArrayFromCommaSeparated:(NSString*)string{
return [string componentsSeparatedByString:@","];
}
夫特:)
var commaSeparatedString = arrayOfEntities.joinWithSeparator(",")
这个问题指定了一种编程语言。请考虑将其改为客观 - c。 – handiansom 2017-03-16 05:40:05
@handiansom那是2012年。 – 2017-04-12 09:37:18
是的,我也注意到了。^^ – handiansom 2017-04-12 11:06:38
所以在我的阵列的对象具有4个或5个属性,我该如何告诉它只加入id值? – Jhorra 2012-04-26 03:36:57
如果您只记录一个物体,您会得到什么?只是ID值?如果是这样,那么使用componentsJoinedBuString就可以得到这个结果:试试看看。 – rdelmar 2012-04-26 03:39:15
我会尝试一下,看看 – Jhorra 2012-04-26 03:43:38