Я новичок в kotlin, и я пытаюсь инициализировать массив, используя конструктор, который принимает размер и функцию.Вот что у меня есть:
fun main(args: Array<String>) {
var ary = Array(5, {x -> x + 2})
println(ary[2])
}
Но это вызывает исключение нулевого указателя в первой строке.Почему это происходит?
РЕДАКТИРОВАТЬ: Я профессор оригинального плаката, и мы пытаемся заставить это работать вместе.Вот еще немного информации:
Я отредактировал код выше, чтобы он был полной программой.Версия Kotlin, которую мы установили на нашем сервере:
$ kotlinc -version
info: kotlinc-jvm 1.2.70 (JRE 1.8.0_144-jdk_2017_08_24_20_46-b00)
Когда я пытаюсь скомпилировать и запустить из командной строки, я получаю:
$ kotlinc example.kt -include-runtime -d example.jar
$ java -jar example.jar
Exception in thread "main" java.lang.NullPointerException
at ExampleKt.main(example.kt:2)
Замечу, что этоКод прекрасно компилируется для меня на моем ноутбуке, который имеет более старую версию Kotlin.