Ios 在可选()中快速获取值
当我从我点击的API中获取一个值时,当我打印数据时,它显示为Ios 在可选()中快速获取值,ios,xcode,swift,Ios,Xcode,Swift,当我从我点击的API中获取一个值时,当我打印数据时,它显示为 Optional(( jknjknjkn )) 比如说。我使用选择器在返回数据时运行方法 func result(data: AnyObject){ println(data["info"]) } 打印的是上面的可选内容。如果没有包装它的可选()东西,如何获取值 如果我只是打印数据,这里是原始数据 <AppUser: 0x78ec5650, objectId: I6nxFSZx9h, localId: (null)
Optional((
jknjknjkn
))
比如说。我使用选择器在返回数据时运行方法
func result(data: AnyObject){
println(data["info"])
}
打印的是上面的可选内容。如果没有包装它的可选()东西,如何获取值
如果我只是打印数据,这里是原始数据
<AppUser: 0x78ec5650, objectId: I6nxFSZx9h, localId: (null)> {
AppID = (
jknkjnjknkn
);
info = (
jknjknjkn
);
}
{
AppID=(
JKNKJKNKN
);
信息=(
JKNJKN
);
}
在Swift中,可选变量是一个变量,可以保存值或nil
(完全没有值)。要从中获取值,必须使用感叹号将其展开:
func result(data: AnyObject){
println(data["info"]!)
}
请注意,如果data[“info”]
为nil
,您的应用程序将因以下错误消息而崩溃:
fatal error: unexpectedly found nil while unwrapping Optional value
如果担心表达式可能产生nil
,可以使用可选绑定:
忽略这一点,我试图在swift项目中使用Parse,他们的文档有多种方式来显示代码。我刚刚复制了一个不同的代码块,现在我可以很好地完成我需要做的事情。在处理数据[“info”]时!我仍然将选项((值))打印到外部。尝试清理和重建。同样的事情。。这是我从数据{AppID=(jknknknkn);info=(jknjknknkn);}中直接获取的原始数据可选绑定是否产生相同的结果?是的,它们仍然打印可选((值))
func result(data: AnyObject){
if let info = data["info"] { //info is now the unwrapped version of `data["info"]
println(info) //will only be executed if data["info"] is not nil
}
}