【发布时间】:2018-02-15 03:45:03
【问题描述】:
我从服务器获取 json,我需要在 swift 代码中将 id 字段转换为字符串。
问题是json有时返回"12345",有时返回12345(带或不带引号)。
如果不检查值类型和检查转换结果是否为nil,是否可以解决此问题?
更新
我用于检查转换结果的代码示例:
let result = (some_index as? String) ?? String(some_index as! Int)
问题出在 Objective-C 中,你有 [NSString stringWithFormat:@"%@", some_object]。但是在 swift 中,您有选项,它会尝试在结果中插入单词“可选”。
更新
停止垃圾邮件,随机回答关于选项的问题。问题很具体——“如何简单地解开可能看起来像 String、Int 或根本不存在的 json 值?”
swift How to remove optional String Character
在这个问题中,他们询问如何转换 Int? -> Int、String? -> String 和类似的。就我而言,我不知道我是否将 Int? 或 String? 作为初始类型。
【问题讨论】:
-
用您当前的相关代码更新您的问题,并清楚地显示您需要帮助的内容。
-
为什么要检查值类型并检查转换是否失败?如果 value 是 String 或 Int 不一致,你必须自己检查,没有其他神奇的方法。
-
您真的要存储一个字符串或
Int值吗?此外,正如其他人已经要求的那样,请提供更多背景信息。 -
为什么服务器有时返回引号而有时不返回。这是一种非常奇怪的行为
-
@TPN1994,当项目被重写为带有可选选项的swift时出现问题
标签: json swift type-conversion