将Swift Dictionary转换为String

khu*_*han 41 swift ios8

为了测试和调试,我试图将Dictionary的内容放到String中.但它没有任何线索它将实现.可能吗?如果是的话,如何.

字典是从Web服务获取的,所以我不知道它具有的键值.我想在app中使用数据.

在Objective C中,%@足以在NSString中存储任何内容.

GoZ*_*ner 91

只需使用as 的description属性CustomStringConvertible

例:

注意:在Swift 3之前(或者之前),CustomStringConvertible被称为Printable.


Jan*_*ano 30

字典到自定义格式的字符串:

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
Run Code Online (Sandbox Code Playgroud)


vau*_*all 7

Jano使用Swift 5.1的回答:

let dic = ["key1": "value1", "key2": "value2"]
let cookieHeader = dic.map { $0.0 + "=" + $0.1 }.joined(separator: ";")
print(cookieHeader) // key2=value2;key1=value1
Run Code Online (Sandbox Code Playgroud)