Menu
Coddy logo textTech

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

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

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

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

func greet(name: String, greeting: String = "Hello") {
    print("\(greeting), \(name)!")
}

greet(name: "Alice")                    // Вывод: 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 greet(name: String, greeting: String = "Hello") {
    print("\(greeting), \(name)!")
}

greet(name: "Alice")                    // Вывод: 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

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

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

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

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