如何处理登录响应中的空值?

时间:2019-09-30 10:48:30

标签: ios swift

请,有人告诉我如何处理登录响应中的空值。如果出现任何null值,则我的应用立即崩溃。谁能帮我?预先感谢。

func nullToNil(value : AnyObject?) -> AnyObject?
{
    if value is NSNull {
        return EMPTY as AnyObject
    } else {
        return value
    }
}

2 个答案:

答案 0 :(得分:0)

您需要按照以下方式处理回复

if let name = info["name"] as? String ,let age = info["age"] as? number,let address = info["address"] as? String {
    //Here you received string 'name','age','address'

}

答案 1 :(得分:0)

您可以使用以下代码:

static func getString(_ message: Any?) -> String {
    guard let strMessage = message as? String else {
        guard let doubleValue = message as? Double else {
            guard let intValue = message as? Int else {
                guard let int64Value = message as? Int64 else {
                    return ""
                }
                return String(int64Value)
            }
            return String(intValue)
        }

        let formatter = NumberFormatter()
        formatter.minimumFractionDigits = 0
        formatter.maximumFractionDigits = 2
        formatter.minimumIntegerDigits = 1
        guard let formattedNumber = formatter.string(from: NSNumber(value: doubleValue)) else {
            return ""
        }
        return formattedNumber
    }
    return strMessage.stringByTrimmingWhiteSpaceAndNewLine()
}

func stringByTrimmingWhiteSpaceAndNewLine() -> String {
    return self.trimmingCharacters(in: NSCharacterSet.whitespacesAndNewlines)
}