所以我有一个带有一堆对象的nsmutablearray。我想创建一个逗号分隔的每个对象的id值的字符串。
使用NSArray
实例方法componentsJoinedByString:
。
在Objective-C中:
- (NSString *)componentsJoinedByString:(NSString *)separator
在Swift中:
func componentsJoinedByString(separator: String) -> String
例:
在Objective-C中:
NSString *joinedComponents = [array componentsJoinedByString:@","];
在Swift中:
let joinedComponents = array.joined(seperator: ",")
如果您在Swift中搜索相同的解决方案,可以使用:
var array:Array<String> = ["string1", "string2", "string3"]
var commaSeperatedString = ", ".join(array) // Results in string1, string2, string3
要确保您的数组不包含nil值,可以使用过滤器:
array = array.filter { (stringValue) -> Bool in
return stringValue != nil && stringValue != ""
}
从数组创建字符串:
-(NSString *)convertToCommaSeparatedFromArray:(NSArray*)array{
return [array componentsJoinedByString:@","];
}
从String创建数组:
-(NSArray *)convertToArrayFromCommaSeparated:(NSString*)string{
return [string componentsSeparatedByString:@","];
}
斯威夫特:)
var commaSeparatedString = arrayOfEntities.joinWithSeparator(",")