arrays - 使用 Swift 包含多个键值的字典

标签 arrays swift dictionary

是否可以有一个字典,其中包含一个键的多个值? 例如,我有多个 ID (101,102,103,104...),所有这些 ID 都有一些值(颜色:绿色,数字:4,城市:纽约)。我是编程新手,不确定应该如何存储它。

我在考虑自定义类:

class myClass: NSObject {
    var ID: Int
    var colour: String
    var number: Int
    var city: String

    init(ID: Int, colour: String, number: Int, city: String) {
        self.ID = ID
        self.colour = colour
        self.number = number
        self.city = city
    }
}

然后创建一些变量 var myData = myClass() 以及其中的所有内容,但是我如何访问 ID 102 并修改其颜色? 所以我的问题是如何存储示例中提供的数据以及能够选择特定 ID 并修改属于该 ID 的值的选项。

最佳答案

字典中的每个键必须恰好包含一个值。但是,该值可以是数组、字典或对象等,因此没有实际限制。

由于类的实例存储为引用,字典值可以是对类实例的引用。所以你可以从字典中提取对实例的引用,然后修改实例。请注意,持有同一实例引用的任何人都会看到相同的更改。

关于arrays - 使用 Swift 包含多个键值的字典,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34628668/

相关文章:

javascript - 使用javascript更改带有对象的urlpath

java - 在主类或主方法中声明数组有什么区别?

arrays - Haskell 中的稀疏数组?

c - 使用单个指针访问二维数组

CollectionView 内的 iOS TableView 有时会显示不正确的数据

ios - AlamoFire + ObjectMapper,如何让一个函数接受一个可映射类型的参数?

swift - 无法更改 SKSpriteNode 的纹理

dictionary - Hive - 将行分组到 map 中

c++ - 模板 C++:如何访问 std::map 和 std::set 的迭代器值?

c++ - 通过值查找 map 中的元素