我有一个包含多个对象的NSMutableArray。 我想创建一个逗号分隔的字符串,其中包括每个对象的id值。
我有一个包含多个对象的NSMutableArray。 我想创建一个逗号分隔的字符串,其中包括每个对象的id值。
NSArray
实例方法componentsJoinedByString:
。- (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
使用过滤器:
array = array.filter { (stringValue) -> Bool in
return stringValue != nil && stringValue != ""
}
从数组创建字符串:
-(NSString *)convertToCommaSeparatedFromArray:(NSArray*)array{
return [array componentsJoinedByString:@","];
}
从字符串创建数组:
-(NSArray *)convertToArrayFromCommaSeparated:(NSString*)string{
return [string componentsSeparatedByString:@","];
}
Swift
var commaSeparatedString = arrayOfEntities.joinWithSeparator(",")
[<NSArray实例> valueForKey:@"<属性名称的字符串表示>"]
,它将返回一个只包含该属性的数组。然后在结果上调用componentsJoinedByString:
。在幕后,框架正在遍历数组中的所有对象并在它们上调用valueForKey:
。键-值编码很棒! - Jack Lawrence