scalabook

Форк
0
/
named-parameters.md 
43 строки · 1.5 Кб

Именованные параметры

При вызове метода при желании можно использовать имена параметров. Например, makeConnection

также можно вызывать следующими способами:

def makeConnection(timeout: Int = 5_000, protocol: String = "http") =
println(f"timeout = ${timeout}%d, protocol = ${protocol}%s")
makeConnection(timeout=10_000)
// timeout = 10000, protocol = http
makeConnection(protocol="https")
// timeout = 5000, protocol = https
makeConnection(timeout=10_000, protocol="https")
// timeout = 10000, protocol = https
makeConnection(protocol="https", timeout=10_000)
// timeout = 10000, protocol = https

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

или false
, и поэтому код может быть трудночитаемым:

engage(true, true, true, false)

Гораздо более понятным выглядит использование именованных переменных:

engage(
speedIsSet = true,
directionIsSet = true,
picardSaidMakeItSo = true,
turnedOffParkingBrake = false
)

Ссылки:

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.