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

Преобразование Swift Dictionary в строку

Для тестирования и отладки я пытаюсь поместить содержание словаря в строку. Но не имеют никаких намеков, которые он достигнет. Является ли это возможным? Если да, то как.

Словарь извлекается из веб-службы, поэтому я понятия не имею, какие значения у него есть. Я хочу использовать данные в приложении.

В Objective C% @было достаточно, чтобы хранить что-либо в NSString.

4b9b3361

Ответ 1

Просто используйте свойство description CustomStringConvertible как

Example:

Примечание. До Swift 3 (или, возможно, раньше) CustomStringConvertible был известен как Printable.

Ответ 2

Словарь для строки с пользовательским форматом:

let dic = ["key1":"value1", "key2":"value2"]

let cookieHeader = (dic.flatMap({ (key, value) -> String in
    return "\(key)=\(value)"
}) as Array).joined(separator: ";")

print(cookieHeader) // key2=value2;key1=value1

Ответ 3

Вы можете просто напечатать словарь напрямую, не вставляя его в строку:

let dict = ["foo": "bar", "answer": "42"]

println(dict)
// [foo: bar, answer: 42]

Или вы можете вставить его в строку следующим образом:

let dict = ["foo": "bar", "answer": "42"]

println("dict has \(dict.count) items: \(dict)")
  // dict has 2 items: [foo: bar, answer: 42]