ios – 如何在Swift 2中检查NSDictionary是否为零

前端之家收集整理的这篇文章主要介绍了ios – 如何在Swift 2中检查NSDictionary是否为零前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我在我的函数中将NSDictionary作为参数但是有问题因为不知道如何检查该参数是否为nil.

我的功能看起来像这样:

func doSmth(val : NSDictionary)

在我的函数内部,我试图获得一些值:

let action = val["action"] as! String

但是当接收参数val为nil时,得到错误“致命错误:在解开可选值时意外地发现nil”.

解决方法

错误是由于假设(强制转换)有时可能为零的值. Swift非常棒,因为它允许在非常简洁的语句中使用条件展开和条件转换.我推荐以下内容(适用于Swift 1-3):

使用“if let”有条件地检查字典中的“action”.

用于?有条件地将值转换为String

if let actionString = val["action"] as? String {
   // action is not nil,is a String type,and is now stored in actionString
} else {
   // action was either nil,or not a String type
}
原文链接:https://www.f2er.com/iOS/332886.html

猜你在找的iOS相关文章