I can't figure out a way to add values to an array in Kotlin .
I want to get values from user and add them to the array.
val arr = arrayOf<Int>()
or
var arr = intArrayOf()
In Java I would do something like this:
Scanner ob = new Scanner(System.in);
int arr[] = new int[5];
for (int i = 0; i < arr.length; i++) {
arr[i]=ob.nextInt();
}
How can I do the same in Kotlin?
You need to escape the static field in
of System
class with backtick (`), since in
is a keyword in Kotlin. for example:
val ob = Scanner(System.`in`)
You can create a fixed size int[]
array without initializing it immediately in Kotlin, then the default value of the elements in array are 0
. for example:
val arr = IntArray(5) // create IntArray via constructor
There is a bit different for using for-loop
in Kotlin, for example:
for(i in 0 until arr.size){
arr[i] = ob.nextInt();
}
OR initializing an int[]
array during creation, for example:
val arr = IntArray(5){ ob.nextInt() }
Arrays have fixed sizes. When creating an array, you will have to declare it's size during initialization.
val arr: IntArray = intArrayOf(1, 2, 3)
or
val arr = arrayOf(1, 2, 3)
or
val arr = Array (3){it}
If you want to create a collection that you can dynamically add values to, then you can create a mutable list.
val list = mutableListOf<Int>()
list.add(1)
list.add(2)
list.add(3)
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With