当前位置:  开发笔记 > 编程语言 > 正文

零检查后发现无

如何解决《零检查后发现无》经验,为你挑选了1个好方法。

即使我在使用该值之前检查nil,我也会收到意外发现的nil错误.我错过了什么吗?

if self.orders[indexPath.row]["distanceToHouseHold"] != nil {
    cell.distanceTextField.text = "\(self.orders[indexPath.row]["distanceToHouseHold"] as! String)m"
}

当然,错误在第二行.



1> redent84..:

可能distanceToHouseHold不是String,并且在类型转换时失败.尝试使用if-let支票或新guard支票.

if let distance = self.orders[indexPath.row]["distanceToHouseHold"] as? String {
    cell.distanceTextField.text = "\(distance)m"
}


因为很可能,`self.orders [indexPath.row] ["distanceToHouseHold"]`不是一个字符串,它没有进入if分支.
推荐阅读
手机用户2502852037
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有