相关疑难解决方法(0)

如何在Swift Dictionary中添加nil值?

我已经在我的应用程序中向我的服务器发出了请求.并发布类似这样的数据.服务器端正在等待所有参数,即使它们是零.但我无法将nil值添加到字典中.

 var postDict = Dictionary<String,AnyObject>
 postDict[pass]=123
 postDict[name]="ali"
 postDict[surname]=nil // dictionary still has only pass and name variables.
Run Code Online (Sandbox Code Playgroud)

有没有办法将nil值添加到字典?

null dictionary optional swift

61
推荐指数
4
解决办法
3万
查看次数

检查键中是否存在键[类型:类型?]

如何检查字典中是否存在密钥?我的字典是类型的[Type:Type?].

我不能简单地检查dictionary[key] == nil,因为这可能是由于价值所致nil.

有任何想法吗?

swift

34
推荐指数
3
解决办法
6万
查看次数

检查Swift字典扩展中的nil值

我在playground文件中有以下代码:

extension Dictionary {

    func test()  {

        for key in self.keys {
            self[key]
        }
    }
}

var dict: [String: AnyObject?] = [
    "test": nil
]

dict.test()
Run Code Online (Sandbox Code Playgroud)

我今后将把for-each循环中的行称为输出,因为它是相关的.在这个特定的例子中,输出是nil.

当我将for-each循环更改为如下所示:

for key in self.keys {
    print(self[key])
}
Run Code Online (Sandbox Code Playgroud)

输出是"Optional(nil)\n".

我真正想要做的是检查nil的值,但是代码:

for key in self.keys {
    self[key] == nil
}
Run Code Online (Sandbox Code Playgroud)

输出false.

我尝试的另一件事是:

for key in self.keys {
    self[key] as! AnyObject? == nil
}
Run Code Online (Sandbox Code Playgroud)

产生错误:

Could not cast value of type 'Swift.Optional<Swift.AnyObject>' to 'Swift.AnyObject'
Run Code Online (Sandbox Code Playgroud)

任何帮助都非常感谢!

null extension-methods dictionary optional swift

6
推荐指数
1
解决办法
2862
查看次数

标签 统计

swift ×3

dictionary ×2

null ×2

optional ×2

extension-methods ×1