Порядок изменился, когда я добавляю значения в словарь из модели в Swift ⇐ IOS
-
Anonymous
Порядок изменился, когда я добавляю значения в словарь из модели в Swift
Я сгруппировал данные по дате и добавил значения в AppointmentDateModel — tableValues. Поскольку данные содержат одну и ту же дату с несколькими данными о встречах, я сгруппировал их. Но когда я добавляю значения, они автоматически сортируются или меняют порядок.
Как установить порядок в словаре, чтобы его нельзя было изменить? Или я правильно их группирую?
Моими основными моделями являются DownloadEntity и appointmentDownloadModel, а затем для группировки я использую AppointmentDateModel
объявление:
var mDownloadEntity: [DownloadEntity] = [] var tableValues:[AppointmentDateModel] = [] var dict: [Int64:[AppointmentDownloadModel]] = [:] Добавление кода:
mDownloadEntity.forEach { apDate в печать (apDate) значение var = dict[apDate.appdate] если (значение == ноль) { dict.updateValue([apDate.appointmentDownloadModel!], forKey: apDate.appdate) }еще{ значение?.append(apDate.appointmentDownloadModel!) dict.updateValue(значение!, forKey: apDate.appdate) } } dict.forEach{карта в пусть назначениеDateModel = AppointmentDateModel (appointmentDate: map.key,entities:map.value) tableValues.append(appointmentDateModel) } Модели:
struct AppointmentDownloadModel: Codable{ вар назначениеМодель: Назначение вар прогресс: Int = 0 varfailList: [Int: String] = [:] вар isFinished: Bool = ложь } struct DownloadEntity: Codable { пусть идентификатор: Int вар appdate: Int64 вар userID: Int вар dFirmId: Int вар назначениеИД: Int вар назначениеDownloadModel: AppointmentDownloadModel? } struct AppointmentDateModel: Codable { пусть назначение Дата: Int64 вар сущности: [AppointmentDownloadModel] }
Я сгруппировал данные по дате и добавил значения в AppointmentDateModel — tableValues. Поскольку данные содержат одну и ту же дату с несколькими данными о встречах, я сгруппировал их. Но когда я добавляю значения, они автоматически сортируются или меняют порядок.
Как установить порядок в словаре, чтобы его нельзя было изменить? Или я правильно их группирую?
Моими основными моделями являются DownloadEntity и appointmentDownloadModel, а затем для группировки я использую AppointmentDateModel
объявление:
var mDownloadEntity: [DownloadEntity] = [] var tableValues:[AppointmentDateModel] = [] var dict: [Int64:[AppointmentDownloadModel]] = [:] Добавление кода:
mDownloadEntity.forEach { apDate в печать (apDate) значение var = dict[apDate.appdate] если (значение == ноль) { dict.updateValue([apDate.appointmentDownloadModel!], forKey: apDate.appdate) }еще{ значение?.append(apDate.appointmentDownloadModel!) dict.updateValue(значение!, forKey: apDate.appdate) } } dict.forEach{карта в пусть назначениеDateModel = AppointmentDateModel (appointmentDate: map.key,entities:map.value) tableValues.append(appointmentDateModel) } Модели:
struct AppointmentDownloadModel: Codable{ вар назначениеМодель: Назначение вар прогресс: Int = 0 varfailList: [Int: String] = [:] вар isFinished: Bool = ложь } struct DownloadEntity: Codable { пусть идентификатор: Int вар appdate: Int64 вар userID: Int вар dFirmId: Int вар назначениеИД: Int вар назначениеDownloadModel: AppointmentDownloadModel? } struct AppointmentDateModel: Codable { пусть назначение Дата: Int64 вар сущности: [AppointmentDownloadModel] }
Мобильная версия