Menu
Coddy logo textTech

Функции с одним выражением

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

Если функция содержит всего одно выражение, Kotlin предлагает более лаконичный синтаксис. Вместо фигурных скобок и ключевого слова return можно использовать знак равенства, за которым сразу следует выражение.

Вот обычная функция в сравнении с её эквивалентом, состоящим из одного выражения:

// Обычная функция
fun double(n: Int): Int {
    return n * 2
}

// Функция с одним выражением
fun double(n: Int): Int = n * 2

Обе версии работают одинаково, но вторая короче и легче читается для простых операций.

Kotlin может даже вывести тип возвращаемого значения для функций с одним выражением, позволяя полностью его пропустить:

fun double(n: Int) = n * 2
fun greet(name: String) = "Hello, $name!"

Этот синтаксис также прекрасно работает с условными выражениями:

fun max(a: Int, b: Int) = if (a > b) a else b
fun isEven(n: Int) = n % 2 == 0

Функции с одним выражением идеально подходят для простых вычислений, проверок и преобразований. Они делают ваш код чистым и сосредоточенным на том, что делает функция, а не на механике возврата значения.

challenge icon

Задание

Средне

Напиши функцию calculateDiscount, которая принимает price и percentage и возвращает цену со скидкой.

Используй синтаксис функции с одним выражением (с = вместо фигурных скобок и return), чтобы вычислить итоговую цену после применения скидки.

Цена со скидкой вычисляется так: price - (price * percentage / 100)

Параметры:

  • price (Double): Исходная цена
  • percentage (Int): Процент скидки (0-100)

Возвращаемое значение: Цена после применения скидки (Double)

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

fun calculateDiscount(price: Double, percentage: Int): Double {
    // Напишите код здесь
}
quiz iconПроверьте себя

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

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

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