Menu
CoddyTech

Значения по умолчанию

Часть раздела Основы путешествия по Swift на Coddy. Урок 57 из 86.

Иногда параметр имеет значение, которое используется в большинстве случаев. Вместо того чтобы требовать от вызывающего кода указывать его каждый раз, можно присвоить этому параметру значение по умолчанию.

Чтобы задать значение по умолчанию, используйте оператор присваивания (=) после типа параметра:

func greet(name: String, greeting: String = "Hello") {
    print("\(greeting), \(name)!")
}
greet(name: "Alice")                    // Output: Hello, Alice!
greet(name: "Bob", greeting: "Hi")      // Вывод: Hi, Bob!

При вызове функции можно пропустить параметры, у которых есть значения по умолчанию. Swift автоматически использует значение по умолчанию. Но если вам нужно другое значение, вы всё равно можете явно его указать.

Параметры со значениями по умолчанию следует размещать в конце списка параметров. Это делает вызовы функций чистыми и удобными для чтения:

func calculatePrice(base: Double, taxRate: Double = 0.1) -> Double {
    return base + (base * taxRate)
}
print(calculatePrice(base: 100))              // Вывод: 110.0
print(calculatePrice(base: 100, taxRate: 0.2)) // Вывод: 120.0

Значения по умолчанию делают ваши функции более гибкими. В обычных случаях они работают просто, но при необходимости всё ещё позволяют выполнять настройку.

challenge icon

Задание

Легко

Напишите функцию formatGreeting, которая принимает name, greeting и repeatCount и возвращает отформатированное приветственное сообщение.

Функция должна использовать значения по умолчанию для необязательных параметров:

  • значение greeting по умолчанию должно быть "Hello"
  • значение repeatCount по умолчанию должно быть 1

Сформируйте строку, которая повторяет шаблон приветствия указанное количество раз, разделяя повторения пробелами.

Параметры:

  • name (String): имя человека (обязательный параметр)
  • greeting (String): слово приветствия (по умолчанию: "Hello")
  • repeatCount (Int): количество повторений приветствия (по умолчанию: 1)

Возвращаемое значение: строка с повторяющимся шаблоном приветствия. Формат: "[greeting], [name]!", повторённое repeatCount раз и разделённое одиночным пробелом (String)

Например, если name имеет значение "Alice", greeting имеет значение "Hi", а repeatCount имеет значение 2, функция возвращает "Hi, Alice! Hi, Alice!".

Если вызвать функцию, указав только name со значением "Bob" (используя значения по умолчанию), она вернёт "Hello, Bob!".

Попробуйте сами

func formatGreeting(name: String, greeting: String, repeatCount: Int) -> String {
    // Напишите код здесь
}
quiz iconПроверьте себя

В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.

Все уроки раздела Основы

Потренируйтесь самостоятельно: Песочница Swift