Arrays в Kotlin: работа с массивами

Массив — это набор похожих данных любого типа: Int, String и т. д. Массив (Arrays) в Kotlin имеет изменяемый характер с фиксированным размером. Это означает, что мы можем выполнять операции чтения и записи над элементами массива.

Синтаксис объявления массива

Он инициализирует элемент массива типа int размером 5 со всеми элементами как 0.

 
var myArray = Array(5){0} 

Использование функции arrayOf при объявлении массива Kotlin 

 
var myArray1 = arrayOf(1,10,4,6,15) 
var myArray2 = arrayOf(1,10,4,6,15) 
val myArray3 = arrayOf("Ajay","Prakesh","Michel","John","Sumit") 
var myArray4= arrayOf(1,10,4, "Ajay","Prakesh") 
 
var myArray5: IntArray = intArrayOf(5,10,20,12,15) 

Давайте посмотрим на пример массива в Котлине и увидим, как инициализировать и перемещать его элементы.

Пример массива Kotlin — 1

В этом примере мы просто инициализируем массив размером 5 со значением по умолчанию равным 0. Значение индекса массива начинается с 0. Первый элемент массива помещается в индекс 0, а последний элемент на единицу меньше, чем размер массива.

 
fun main(args: Array){ 
    var myArray = Array(5){0} 
 
    for(element in myArray){ 
        println(element) 
    } 
} 

Выход:

0 
0 
0 
0 
0 

Пример массива Kotlin — 2

Мы также можем переписать значение массива, используя значение его индекса. Поскольку мы можем изменить значение массива, он изменяем по своей природе. Например:

 
fun main(args: Array){ 
    var myArray = Array(5){0} 
 
    myArray[1]= 10 
    myArray[3]= 15 
 
    for(element in myArray){ 
        println(element) 
    } 
} 

Выход:

0 
10 
0 
15 
0 

Пример — 3: использование функций arrayOf() и intArrayOf()

Массив в Kotlin также объявляется с использованием различных функций, таких как arrayOf(), intArrayOf() и т. д. Давайте посмотрим на пример функции arrayOf() и intArrayOf().

 
fun main(args: Array){ 
    val name = arrayOf("Ajay","Prakesh","Michel","John","Sumit") 
    var myArray2 = arrayOf(1,10,4,6,15) 
    var myArray3 = arrayOf(5,10,20,12,15) 
    var myArray4= arrayOf(1,10,4, "Ajay","Prakesh") 
    var myArray5: IntArray = intArrayOf(5,10,20,12,15) 
 
    for(element in name){ 
        println(element) 
    } 
 
    println() 
    for(element in myArray2){ 
        println(element) 
    } 
    println() 
    for(element in myArray3){ 
        println(element) 
    } 
    println() 
    for(element in myArray4){ 
        println(element) 
    } 
    println() 
    for(element in myArray5){ 
        println(element) 
    } 
 
} 

Выход:

Ajay 
Prakesh 
Michel 
John 
Sumit 
 
1 
10 
4 
6 
15 
 
5 
10 
20 
12 
15 
 
1 
10 
4 
Ajay 
Prakesh 
 
5 
10 
15 
20 
25 

Пример — 4

Предположим, что когда мы пытаемся вставить элемент в позицию индекса больше, чем размер массива, что происходит? Это вызовет исключение ArrayIndexOutOfBoundException. Это связано с тем, что значение индекса отсутствует там, где мы хотим вставить элемент. Из-за этого массив называется длиной фиксированного размера. Давайте посмотрим на пример:

 
fun main(args: Array){ 
    var myArray5: IntArray = intArrayOf(5,10,20,12,15) 
 
    myArray5[6]=18 // ArrayIndexOutOfBoundsException 
    for(element in myArray5){ 
        println(element)   
    } 
} 

Выход:

Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 6 
 at ArrayListKt.main(Array.kt:4) 

Пример 5: обход с использованием диапазона

Элементы массива Kotlin также перемещаются с использованием диапазона индексов (minValue..maxValue) или (maxValue..minvalue). Давайте посмотрим на пример обхода массива с использованием диапазона.

 
fun main(args: Array){ 
    var myArray5: IntArray = intArrayOf(5,10,20,12,15) 
 
    for(index in 0..4){ 
        println(myArray5[index]) 
    } 
    println() 
    for(index in 0..myArray5.size-1){ 
        println(myArray5[index]) 
    } 
} 

Выход:

5 
10 
20 
12 
15 
 
5 
10 
20 
12 
15 

Оцените статью