J'ai donc un tableau nsmutablear avec un tas d'objets dedans. Je veux créer une chaîne séparée par des virgules de la valeur id de chaque objet.
Utilisez la méthode d'instance NSArray
componentsJoinedByString:
.
Dans l'objectif-C:
- (NSString *)componentsJoinedByString:(NSString *)separator
Dans Swift:
func componentsJoinedByString(separator: String) -> String
Exemple:
Dans l'objectif-C:
NSString *joinedComponents = [array componentsJoinedByString:@","];
Dans Swift:
let joinedComponents = array.joined(seperator: ",")
Si vous recherchez la même solution dans Swift, vous pouvez utiliser ceci:
var array:Array<String> = ["string1", "string2", "string3"]
var commaSeperatedString = ", ".join(array) // Results in string1, string2, string3
Pour vous assurer que votre tableau ne contient pas de valeurs nulles, vous pouvez utiliser un filtre:
array = array.filter { (stringValue) -> Bool in
return stringValue != nil && stringValue != ""
}
Créer une chaîne à partir d'un tableau:
-(NSString *)convertToCommaSeparatedFromArray:(NSArray*)array{
return [array componentsJoinedByString:@","];
}
Créer un tableau à partir d'une chaîne:
-(NSArray *)convertToArrayFromCommaSeparated:(NSString*)string{
return [string componentsSeparatedByString:@","];
}
Rapide :)
var commaSeparatedString = arrayOfEntities.joinWithSeparator(",")