fun main() {
fun evenFn(num: Int): Boolean {
return num % 2 == 0
}
val evenFn = fun(num: Int) = num % 2 == 0
val list = listOf(1, 2, 3, 4, 5, 6)
println(list.filter(evenFn))
println(list.filter { evenFn(it) })
}
Как получается, что я могу объявить два evenFns
с одним и тем же именем (один хранится в переменной, а другой только что определен), и мне приходится вызывать их по-разному? В JavaScript это может привести к ошибке, говорящей о том, что evenFn
.
уже существует.
Может кто-нибудь объяснить, почему два evenFns
трактуются компилятором по-разному?