КОДЕКС
Словари Swift
Узнайте, что такое словарь и как им пользоваться
Словари Swift
Словари Swift - это основные строительные блоки вашего кода. Словарь - это контейнер для хранения пар ключ-значение. Ключ действует как уникальный идентификатор значения.
var footballers: [String: Int] = [ "Ronaldo": 7, "Messi": 10 ]
Как создать словарь на Swift
Создадим словарь футболистов:
var footballers: [String: Int] = [ "Ronaldo": 7, "Messi": 10 ]
В этом словаре ключ - это имя игрока (строка), а значение - это номер этого игрока (целое число). Таким образом, тип [String: Int]
.
Как получить доступ к словарному значению в Swift
Доступ к словарю значение осуществляется через нижний индекс.
Например, давайте получим номер игрока Роналду:
let num = footballers["Ronaldo"] print(num) // prints Optional(7)
Как обновить значение словаря в Swift
Вы можете обновить значение в словаре одним из двух возможных способов
- Используйте синтаксис нижнего индекса.
- Использовать
updateValue
метод
Например, измените номер Роналду:
// Subscript syntax footballers["Ronaldo"] = 9 // OR // updateValue method footballers.updateValue(9, forKey:"Ronaldo")
Разница между этими подходами заключается в том, что последний возвращает исходное значение при обновлении нового значения. Таким образом, вы можете сохранить исходное значение, если вам нужно:
let originalNumber = footballers.updateValue(9, forKey:"Ronaldo") // Now originalNumber is Optional(7) and the new player number is 9
Как добавить пару ключ-значение в словарь в Swift
Вы можете добавить новую пару "ключ-значение" в словарь:
- Использование подстрочного синтаксиса
- Используя
updateValue
Например, вы можете добавить проигрыватель с именем Bale
в словарь одним из следующих способов:
// using the subscript syntax footballers["Bale"] = 9 // or // using updateValue method footballers.updateValue(9, forKey: "Bale")
Как удалить пару ключ-значение из словаря в Swift
Вы можете удалить элемент словаря с помощью:
- Использование подстрочного синтаксиса
- Использование метода
removeValue
Например, вы можете удалить Bale
из словаря:
// using the subscript syntax footballers["Bale"] = nil // or // using the updateValue method footballers.removeValue(forKey: "Bale")
Разница между синтаксисом нижнего индекса и использованием removeValue
заключается в том, что последний возвращает значение, которое было удалено, чтобы вы могли сохранить его, если вам нужно:
let baleNum = footballers.removeValue(forKey: "Bale") print(baleNum) // Prints Optional(9)
Как получить длину словаря в Swift
Чтобы подсчитать количество пар ключ-значение в словаре, вы можете использовать count
.
Например, вы можете подсчитать количество футболистов в словаре:
footballers.count
Чтобы проверить, пуст ли словарь, вы можете сравнить count
с 0
. Но вы также можете использовать isEmpty
footballers.isEmpty
Как перемещаться по словарю в Swift
Вы можете использовать, например, для цикла для просмотра словаря.
Например:
for (player, number) in footballers { print("\(player) has number \(number).") } // "Ronaldo has number 7" // "Messi has number 10"
Как получить список ключей словаря в Swift
Получите список, содержащий только все ключи словаря, используя свойство keys
.
Например, получить все имена футболистов по:
let names = footballers.keys print(names) // prints e.g. ["Ronaldo", "Messi"]
Как получить список значений словаря в Swift
Получить список, содержащий только все значения словаря, можно с помощью свойства values
.
Например, получить список номеров футболистов по:
let numbers = footballers.values print(numbers) // prints e.g. [7, 10]
Заключение
Словарь - это один из основных типов коллекций в Swift.
Словарь - это набор пар ключ-значение, разделенных запятыми.
Вы можете делать много полезных вещей со словарями, например, открывать, обновлять и удалять значения.
Спасибо за прочтение. Удачного кодирования!