gpt4 book ai didi

swift - 无法解决 swift 4 中的 Null 问题?

转载 作者:行者123 更新时间:2023-11-30 11:27:08 25 4
gpt4 key购买 nike

我正在尝试检查从服务器接收的值,如果字符串为空,我将使用以下条件。

 var line2Cvar = permanentCAddVarDictionary?["line2"] as! String
if line2Cvar.isEmpty {
line2Cvar = "---"
}
self.permanentCAddDic.setValue(line2Cvar, forKey: "line2Cvar")

如果字符串为空,我将使用以下条件。

 var line2Cvar = permanentCAddVarDictionary?["line2"]

if line2Cvar is NSNull {
line2Cvar = "----"
}
self.emergencyContactDic.setValue(line2Cvar, forKey: "line2Cvar")

但就我而言,有时我会变得空,有时我会得到空值。如何直接检查字符串是否为空或为 null。

最佳答案

在字典中检查字符串时,有 4 种可能的状态:

  1. 字符串存在且非空
  2. 字符串存在,但为空
  3. 键在字典中,但值不是字符串
  4. 字典中缺少该键

您必须单独检查每个案例。

let possibleString = dict[key]

if let string = possibleString as? String {
if string.isEmpty {
// deal with empty case
} else {
// deal with non-empty case
}
} else if possibleString == nil {
// deal with key not-present case
} else {
// deal with value-not-string case
}

您可以结合一些检查并消除其他检查,具体取决于您需要的特定逻辑。例如,如果您想以相同的方式处理 not-present 和 not-a-string,则可以消除 nil 检查,然后直接跳转到最后的 else.

关于swift - 无法解决 swift 4 中的 Null 问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50617782/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com