gpt4 book ai didi

swift - 如何将不同类型放入 Swift 语言的字典中?

转载 作者:IT王子 更新时间:2023-10-29 04:59:29 24 4
gpt4 key购买 nike

Swift 只允许字典包含单一类型。

这是从 Swift 书中摘录的定义:

A dictionary is a container that stores multiple values of the same type

[...]

They differ from Objective-C’s NSDictionary and NSMutableDictionary classes, which can use any kind of object as their keys and values and do not provide any information about the nature of these objects.

如果是这种情况,那么我们将如何创建嵌套字典?

假设我们有一个 plist,其中包含 String、Array 和 Dictionary 项。如果我只能保存相同类型的项目(字符串、数组等),那么我将如何使用存储在 plist 中的不同类型的项目?

如何在 Swift 中将不同类型放入同一个字典中?

最佳答案

您可以使用字典值的 Any 类型实现类似 plist 的嵌套结构,这在某种程度上类似于 Objective-C 的 id 类型,但也可以包含值类型。

var response = Dictionary<String, Any>()
response["user"] = ["Login": "Power Ranger", "Password": "Mighty Morfin'"]
response["status"] = 200

编辑:

Any 似乎比 AnyObject 更好,因为在上面的代码中 response["status"]Swift 类型。 Int,使用AnyObject的值类型是__NSCFNumber

关于swift - 如何将不同类型放入 Swift 语言的字典中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24021950/

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