Назад к вопросам
JuniorТеорияЧасто
Что выведет программа?
fun greet(
name: String,
greeting: String = "Hello",
mark: String = "!"
) = "$greeting, $name$mark"
fun main() {
println(greet("Ann", mark = "?"))
}Hello, Ann?
- Ждать
?, Ann!: считать, что второй аргумент всегда попадает во второй параметр. Именованный аргумент попадает в параметр со своим именем, здесь вmark. - Ждать ошибки компиляции из-за пропущенного
greeting: параметр со значением по умолчанию можно не передавать, а именованный аргумент позволяет через него перескочить.
- Что выведет
greet("Ann", "Hi")? - Что выведет
greet(mark = "?", name = "Ann")и почему такой порядок допустим?