Careeroza
Primitive Arrays
IntArray, DoubleArray and Friends
Array<Int> stores boxed Integer objects. For numbers, Kotlin has special arrays that compile to Java primitive arrays (int[]), which are faster and use less memory.
Example
Primitive arrays have their own builder functions and default to zeros.
fun main() {
val marks = intArrayOf(78, 91, 66)
val prices = doubleArrayOf(99.0, 149.5)
val flags = booleanArrayOf(true, false)
val zeros = IntArray(4)
val evens = IntArray(5) { (it + 1) * 2 }
println(marks.contentToString())
println(prices.contentToString())
println(flags.contentToString())
println(zeros.contentToString())
println(evens.contentToString())
}Output
[78, 91, 66] [99.0, 149.5] [true, false] [0, 0, 0, 0] [2, 4, 6, 8, 10]
Kotlin vs Java Arrays
| Kotlin | Java |
|---|---|
IntArray / intArrayOf(1, 2) | int[] / new int[]{1, 2} |
DoubleArray | double[] |
Array<Int> | Integer[] |
Array<String> / arrayOf("a") | String[] |
arr.size | arr.length |