Изменение массивов
Часть раздела Основы путешествия по Swift на Coddy. Урок 64 из 86.
Массивы становятся по-настоящему полезными, когда ты можешь изменять их содержимое. Чтобы изменить массив, объяви его с помощью var вместо let.
Вы можете изменить существующий элемент, присвоив новое значение определённому индексу:
var colors = ["Red", "Green", "Blue"]
colors[1] = "Yellow"
print(colors) // ["Red", "Yellow", "Blue"]Чтобы добавить новые элементы, используй метод append для одного элемента или оператор +=, чтобы добавить несколько элементов за раз:
var numbers = [1, 2, 3]
numbers.append(4)
print(numbers) // [1, 2, 3, 4]
numbers += [5, 6]
print(numbers) // [1, 2, 3, 4, 5, 6]Чтобы вставить элемент в определённую позицию, используй метод insert:
var fruits = ["Apple", "Orange"]
fruits.insert("Banana", at: 1)
print(fruits) // ["Apple", "Banana", "Orange"]Чтобы удалить элементы, используй remove(at:) с индексом элемента, который хочешь удалить:
var items = ["A", "B", "C", "D"]
items.remove(at: 2)
print(items) // ["A", "B", "D"]Помни: когда ты удаляешь элемент, все следующие за ним элементы сдвигаются вниз, заполняя освободившееся место.
Задание
ЛегкоНапиши функцию modifyInventory, которая принимает массив элементов, новый элемент для добавления и индекс элемента для удаления, а затем возвращает изменённый массив.
Выполни следующие операции по порядку:
- Измени первый элемент на
"Updated" - Добавь новый элемент в конец массива
- Удали элемент с указанным индексом
Параметры:
items([String]): Исходный массив элементовnewItem(String): Элемент для добавленияremoveIndex(Int): Индекс элемента для удаления (после добавления)
Возвращает: Изменённый массив после выполнения всех операций ([String])
Пример: Если items — это ["A", "B", "C"], newItem — это "D", а removeIndex — это 2, функция должна:
- Изменить первый элемент:
["Updated", "B", "C"] - Добавить "D":
["Updated", "B", "C", "D"] - Удалить элемент с индексом 2:
["Updated", "B", "D"]
Попробуйте сами
func modifyInventory(items: [String], newItem: String, removeIndex: Int) -> [String] {
// Напишите код здесь
}
В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Основы
4Операторы. Часть 1
Арифметические операторыОператор остатка от деленияСоставное присваиваниеПовторение: простая математикаОператоры сравнения7Основы ввода-вывода
Функция printИнтерполяция строкВвод с ReadLineПреобразование типовПовторение: до 120Повторение: истина или ложь2Переменные
Let и VarАннотации типовЧислаСтрокаЛогический типСоглашения об именованииПовторение — инициализация переменных5Операторы, часть 2
Логические операторы, часть 1Логические операторы, часть 2Повторение: простая логикаЛогические операторы, часть 3Тернарный оператор8Калькулятор разделения счёта
Приветственное сообщениеВвод данных14Массивы: продвинутый уровень
Срезы массивов. Часть 1Срезы массивов. Часть 2Операторы последовательностейМетод Contains3Опциональные значения
Что такое опциональные значенияИзвлечение значения с помощью if letGuard letОператор объединения с nilПовторение — безопасное извлечение значения6Принятие решений
Условный оператор ifIf — ElseПовторение: простой калькуляторОператор switchSwitch с диапазонами9Циклы
Цикл for-inЦикл whileЦикл repeat-whileПрерывание циклаПереход к следующей итерацииПовторение — факториалДиапазоны в циклахВложенный циклПовторение — динамический ввод12Основы массивов
Объявление массиваДоступ к элементамИзменение массивовМетоды массивовПовторение — список продуктовПовторение — массив в обратном порядкеКортежиПотренируйтесь самостоятельно: Песочница Swift