我正在尝试比较字符串值。字符串值存储在Dictionary中。 当我解开这样的数据时:
let type:String = basicBlk["type"] as! String
并比较
print (type.lowercaseString == "minion")
结果是 true
如果我像这样投票:
let type:String = String(basicBlk["type"])
并比较
print (type.lowercaseString == "minion")
结果是 false
我想了解究竟有什么区别。
答案 0 :(得分:1)
这个
let type:String = String(basicBlk["type"])
将可选值转换为如下所示的字符串:
Optional("Minion")
当您将该字符串转换为小写字母时,它看起来像:
optional("minion")
问题是您正在创建可选值的字符串表示形式,并且在结果值中包含字符串“Optional(
”和字符串“)
”。
只需为两个示例打印type
,您就会明白我的意思。