Как создать фиксированный размер IntArray и инициализировать массив позже в Kotlin?



Я только на начальном уровне в Котлине.
Я не получаю никакого способа добавить значения в массив в Котлине .
Я хочу получить значения от пользователя и добавить их в массив.



val arr = arrayOf<Int>()


Или



var arr = intArrayOf()


Как в Java,



Scanner ob=new Scanner(System.in);
int arr[]=new int[5];
for(int i=0;i<arr.length;i++)
{
arr[i]=ob.nextInt();
}


Как выполнить то же самое в Котлине?

855   2  

2 ответов:

Вам нужно экранировать статическое поле in класса System с помощью backtick (`), поскольку in является ключевым словом в Kotlin. например:

val ob = Scanner(System.`in`)

Вы можете создать массив фиксированного размера int[], не инициализируя его сразу в Kotlin, тогда значение по умолчанию элементов в массиве равно 0. например:

val arr = IntArray(5) // create IntArray via constructor

Есть немного другое для использования for-loop в Котлине, например:

for(i in 0 until arr.size){
    arr[i] = ob.nextInt();
}

Или инициализация массива int[] во время создание, например:

val arr = IntArray(5){ ob.nextInt() }

Массивы имеют фиксированные размеры. При создании массива вам придется объявить его размер во время инициализации.

val arr: IntArray = intArrayOf(1, 2, 3)

Или

val arr = arrayOf(1, 2, 3)

Или

val arr = Array (3){it}

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

val list = mutableListOf<Int>()
list.add(1)
list.add(2)
list.add(3)

Comments

    Ничего не найдено.