【发布时间】:2019-11-06 10:16:59
【问题描述】:
我有以下模型:Car 和 CarType,我在下面创建了一系列汽车。我想将该汽车数组转换为字典 [String: [Car]]
struct Car {
let carId: Int
let carName: String
let carType: [Category]
init(carId: Int, carName: String, carType: [Category]) {
self.carId = carId
self.carName = carName
self.carType = carType
}
}
struct Category {
let categoryId: Int
let categoryName: String
}
var cat1 = Category(categoryId: 123, categoryName: "Truck")
var cat2 = Category(categoryId: 123, categoryName: "Family")
let car1 = Car(carId: 1, carName: "Ford", carType: [cat1])
let car2 = Car(carId: 2, carName: "Honda", carType: [cat1, cat2])
let cars = [car1, car2]
我想将汽车数组转换为 [String: [Car]] 字典。
【问题讨论】:
-
String(字典键)代表什么?并且请避免结构中的冗余信息,例如struct Car { let id: Int; let name: String; let type: [Category] }根据命名指南就足够了。 -
谢谢@vadian。字典中的字符串是 carName。
-
但是
car1和car2有不同的名字。你想要["Ford": [car1], "Honda": [car2]]吗? -
是的,确实如此。