Подтвердить что ты не робот

Objective-C Простейший способ создания разделенной запятой строки из массива объектов

Итак, у меня есть nsmutablearray с кучей объектов в нем. Я хочу создать строку с разделителями-запятыми значения id каждого объекта.

4b9b3361

Ответ 1

Используйте NSArray экземпляра NSArray componentsJoinedByString:

В Objective-C:

- (NSString *)componentsJoinedByString:(NSString *)separator

В Свифте:

func componentsJoinedByString(separator: String) -> String

Пример:

В Objective-C:

NSString *joinedComponents = [array componentsJoinedByString:@","];

В Свифте:

let joinedComponents = array.joined(seperator: ",")

Ответ 2

Если вы ищете такое же решение в 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 != ""
}

Ответ 3

Создать строку из массива:

-(NSString *)convertToCommaSeparatedFromArray:(NSArray*)array{
    return [array componentsJoinedByString:@","];
}

Создать массив из строки:

-(NSArray *)convertToArrayFromCommaSeparated:(NSString*)string{
    return [string componentsSeparatedByString:@","];
}

Ответ 4

Swift:)

 var commaSeparatedString = arrayOfEntities.joinWithSeparator(",")