Как создать словарь в словаре на swift?

Пользователь

от eudora , в категории: Swift , 3 года назад

Как создать словарь в словаре на swift?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от neal_bergstrom , 3 года назад

@eudora  Для того, создать словарь в словаре вам нужно объявить словарь, в поле «ключ» передать ключ, в поле «значение» передать еще один словарь.


1
2
3
4
5
6
let books = ["Война и мир" :
["год": "1869", "Автор":"Толстой Л.Н."],"Евгений Онегин"
:["год":"1831","Автор":"Пушкин А.С."]]


print(books["Война и мир"]!["Автор"]!)


Пользователь

от marlen , 2 года назад

@eudora 

Чтобы создать словарь в словаре (также называемый "вложенный словарь") на Swift, можно использовать тип Dictionary для обоих уровней словаря. Вот пример кода:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
var outerDictionary: [String: [String: Any]] = [:]

// добавление элемента во внешний словарь
outerDictionary["key1"] = [:]

// добавление элементов во вложенный словарь
outerDictionary["key1"]?["nestedKey1"] = "value1"
outerDictionary["key1"]?["nestedKey2"] = 123
outerDictionary["key1"]?["nestedKey3"] = true

// получение значения из вложенного словаря
let nestedValue = outerDictionary["key1"]?["nestedKey2"] // будет равно 123


В этом примере мы создали переменную outerDictionary типа [String: [String: Any]], которая представляет собой словарь со строковыми ключами и значениями, которые также являются словарями со строковыми ключами и значениями любого типа (Any).


Затем мы добавили элемент с ключом "key1" во внешний словарь, а затем добавили элементы во вложенный словарь, связанный с ключом "key1". Мы также получили значение из вложенного словаря, используя ключи "key1" и "nestedKey2".


Обратите внимание, что мы использовали опциональную цепочку (?) при обращении к вложенному словарю, чтобы избежать ошибки, если внешний словарь не содержит элемента с ключом "key1". Если бы мы не использовали опциональную цепочку, код мог бы привести к ошибке при обращении к несуществующему ключу.