ArrayList в Kotlin — подробно с примерами

Класс ArrayList в Kotlin используется для создания динамического массива. Это означает, что размер класса ArrayList может быть увеличен или уменьшен в соответствии с требованиями. Класс ArrayList предоставляет функции чтения и записи.

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

В данном руководстве рассмотрим Kotlin класс ArrayList и разберем 10 подробных примеров использования его функций.

Конструктор Kotlin ArrayList

Конструктор Описание
ArrayList<E>() Он используется для создания пустого ArrayList.
ArrayList(capacity: Int) Используется для создания ArrayList указанной емкости.
ArrayList(elements: Collection<E>) Используют для создания ArrayList, заполненного элементами коллекции.

Функции

Функция Описание
open fun add(element: E): Boolean Используется для добавления определенного элемента в коллекцию.
open fun add(index: Int, element: E) Вставка элемента по определенному индексу.
open fun addAll(elements: Collection<E>): Boolean Используется для добавления всех элементов указанной коллекции в текущую коллекцию.
open fun addAll(index: Int, elements: Collection<E>): Boolean Добавление всех элементов указанной коллекции в текущий список по указанному индексу.
open fun clear() Используется для удаления всех элементов из коллекции.
open fun get(index: Int): E Используется для возврата элемента по указанному индексу в списке.
open fun indexOf(element: E): Int Возврат индекса первого появления указанного элемента в списке или возврата -1, если указанный элемент отсутствует в списке.
open fun lastIndexOf(element: E): Int Возвращает последнее вхождение данного элемента из списка или возвращает -1, если данный элемент отсутствует в списке.
open fun remove(element: E): Boolean Используется для удаления одного экземпляра определенного элемента из текущей коллекции, если он доступен.
open fun removeAt(index: Int): E Удаление определенного элемента индекса из списка.
open fun removeRange(startIndex: Int, endIndex: Int) Удаляет диапазон элементов, начиная с startIndex до endIndex, в который endIndex не входит.
open fun set(index: Int, element: E): E Применяется для замены элемента из указанной позиции из текущего списка на указанный элемент.
open fun toArray(): Array<Any?> Используется для возврата нового массива типа Array с элементами этой коллекции.
open fun toString(): String Для возврата строкового представления объекта.
fun trimToSize() В этой реализации ArrayList ничего не делает.

Пример 1 — пустой ArrayList

Давайте создадим простой пример определения класса ArrayList с пустым ArrayList of String и добавим элементы позже.

 
fun main(args: Array){ 
 
    val arrayList = ArrayList()//Creating an empty arraylist 
    arrayList.add("Ajay")//Adding object in arraylist 
    arrayList.add("Vijay") 
    arrayList.add("Prakash") 
    arrayList.add("Rohan") 
    arrayList.add("Vijay") 
    println(".......print ArrayList.......") 
    for(i in arrayList) { 
        println(i) 
    } 
} 

Выход:

......print ArrayList...... 
Ajay 
Vijay 
Prakash 
Rohan 
Vijay 

Пример 2 — инициализация емкости ArrayList

Давайте создадим класс ArrayList с инициализацией его начальной емкости. Емкость класса ArrayList в Котлин не является фиксированной и может быть изменена позже в программе в соответствии с требованиями.

 
fun main(args: Array){ 
 
    val arrayList1 = ArrayList(5) 
    arrayList1.add("Ajay")//Adding object in arraylist 
    arrayList1.add("Vijay") 
    arrayList1.add("Prakash") 
    arrayList1.add("Rohan") 
    arrayList1.add("Vijay") 
    println(".......print ArrayList1......") 
    for(i in arrayList1) { 
        println(i) 
    } 
    println("size of arrayList1 = "+arrayList1.size) 
    val arrayList2 = ArrayList(5) 
    arrayList2.add(14) 
    arrayList2.add(20) 
    arrayList2.add(80) 
    println("......print ArrayList2......") 
    for(i in arrayList2) { 
        println(i) 
    } 
    println("size of arrayList2 = "+arrayList2.size) 
} 

Выход:

.......print ArrayList1...... 
Ajay 
Vijay 
Prakash 
Rohan 
Vijay 
size of arrayList1 = 5 
......print ArrayList2...... 
14 
20 
80 
size of arrayList2 = 3 

Пример 3 — заполненные элементы с использованием коллекции

Элементы класса Kotlin ArratList также можно добавлять с помощью другой коллекции. Для большей конкретики в классе ArrayList он объявляется его универсальными типами. Элементы класса ArrayList также можно обходить с помощью функции iterator(). Например:

 
fun main(args: Array){ 
 
    val arrayList: ArrayList = ArrayList(5) 
    var list: MutableList = mutableListOf() 
 
    list.add("Ajay") 
    list.add("Vijay") 
    list.add("Prakash") 
 
    arrayList.addAll(list) 
    println("......print ArrayList......") 
    val itr = arrayList.iterator() 
    while(itr.hasNext()) { 
        println(itr.next()) 
    } 
    println("size of arrayList = "+arrayList.size) 
} 

Выход:

.......print ArrayList....... 
Ajay 
Vijay 
Prakash 
size of arrayList = 3 

Пример 4 — get()

Функция get() класса ArrayList используется для извлечения элемента, присутствующего в заданном указанном индексе. Например:

 
fun main(args: Array){ 
 
    val arrayList: ArrayList = ArrayList(5) 
 
    arrayList.add("Ajay") 
    arrayList.add("Vijay") 
    arrayList.add("Prakash") 
    arrayList.add("Rohan") 
    arrayList.add("Vijay") 
    println(".......print ArrayList.......") 
    for(i in arrayList) { 
        println(i) 
    } 
    println(".......arrayList.get(2).......") 
    println( arrayList.get(2)) 
} 

Выход:

.......print ArrayList....... 
Ajay 
Vijay 
Prakash 
Rohan 
Vijay 
.......arrayList.get(2)....... 
Prakash 

Пример 5 — set()

Функция set() класса ArrayList используется для установки данного элемента по указанному индексу и замены, если какой-либо элемент присутствует по указанному индексу. Например:

 
fun main(args: Array){ 
 
    val arrayList: ArrayList = ArrayList(5) 
 
    arrayList.add("Ajay") 
    arrayList.add("Vijay") 
    arrayList.add("Prakash") 
    arrayList.add("Rohan") 
    arrayList.add("Vijay") 
    println(".......print ArrayList.......") 
    for(i in arrayList) { 
        println(i) 
    } 
    println(".......arrayList.set(2,\"Ashu\").......") 
 arrayList.set(2,"Ashu") 
    println(".......print ArrayList.......") 
    for(i in arrayList) { 
        println(i) 
    } 
} 

Выход:

.......print ArrayList....... 
Ajay 
Vijay 
Prakash 
Rohan 
Vijay 
.......arrayList.set(2,"Ashu")....... 
.......print ArrayList....... 
Ajay 
Vijay 
Ashu 
Rohan 
Vijay 

Пример 6 — indexOf()

Функция indexOf() класса ArrayList используется для получения значения индекса первого вхождения элемента или возврата -1, если указанный элемент отсутствует в списке. Например:

 
fun main(args: Array){ 
 
    val arrayList: ArrayList = ArrayList(5) 
 
    arrayList.add("Ajay") 
    arrayList.add("Vijay") 
    arrayList.add("Prakash") 
    arrayList.add("Rohan") 
    arrayList.add("Vijay") 
    println(".......print ArrayList.......") 
    for(i in arrayList) { 
        println(i) 
    } 
     println(".......arrayList.indexOf(\"Vijay\").......") 
    println(arrayList.indexOf("Vijay")) 
} 

Выход:

.......print ArrayList....... 
Ajay 
Vijay 
Prakash 
Rohan 
Vijay 
.......arrayList.indexOf("Vijay")....... 
1 

Пример 7 — lastIndexOf()

Функция lastindexOf() класса ArrayList используется для получения значения индекса последнего вхождения элемента или возврата -1, если указанный элемент отсутствует в списке. Например:

 
fun main(args: Array){ 
 
    val arrayList: ArrayList = ArrayList(5) 
 
    arrayList.add("Ajay") 
    arrayList.add("Vijay") 
    arrayList.add("Prakash") 
    arrayList.add("Rohan") 
    arrayList.add("Vijay") 
    println(".......print ArrayList.......") 
    for(i in arrayList) { 
        println(i) 
    } 
    println(".......arrayList.lastIndexOf(\"Vijay\").......") 
    println(arrayList.lastIndexOf("Vijay")) 
} 

Выход:

.......print ArrayList....... 
Ajay 
Vijay 
Prakash 
Rohan 
Vijay 
.......arrayList.lastIndexOf("Vijay")....... 
4 

Пример 8 — remove()

Функция remove() класса ArrayList используется для удаления первого вхождения элемента, если он присутствует в списке. Например:

 
fun main(args: Array){ 
 
    val arrayList: ArrayList = ArrayList(5) 
 
    arrayList.add("Ajay") 
    arrayList.add("Vijay") 
    arrayList.add("Prakash") 
    arrayList.add("Rohan") 
    arrayList.add("Vijay") 
    println(".......print ArrayList.......") 
    for(i in arrayList) { 
        println(i) 
    } 
    println(".......arrayList.remove(\"Vijay\").......") 
    arrayList.remove("Vijay") 
    for(i in arrayList) { 
        println(i) 
    } 
} 

Выход:

.......print ArrayList....... 
Ajay 
Vijay 
Prakash 
Rohan 
Vijay 
.......arrayList.remove("Vijay")....... 
Ajay 
Prakash 
Rohan 
Vijay 

Пример 9 — removeAt()

Функция removeAt() класса ArrayList используется для удаления элемента с указанным индексом из списка. Например:

 
fun main(args: Array){ 
 
    val arrayList: ArrayList = ArrayList(5) 
 
    arrayList.add("Ajay") 
    arrayList.add("Vijay") 
    arrayList.add("Prakash") 
    arrayList.add("Rohan") 
    arrayList.add("Vijay") 
    println(".......print ArrayList.......") 
    for(i in arrayList) { 
        println(i) 
    } 
    println(".......arrayList.remove(3).......") 
    arrayList.removeAt(3) 
    for(i in arrayList) { 
        println(i) 
    } 
} 

Выход:

.......print ArrayList....... 
Ajay 
Vijay 
Prakash 
Rohan 
Vijay 
.......arrayList.remove(3)....... 
Ajay 
Vijay 
Prakash 
Vijay 

Пример 10 — clear()

Функция clear() класса ArrayList используется для удаления (очистки) всех элементов списка. Например:

 
fun main(args: Array){ 
 
    val arrayList: ArrayList = ArrayList(5) 
 
    arrayList.add("Ajay") 
    arrayList.add("Vijay") 
    arrayList.add("Prakash") 
    arrayList.add("Rohan") 
    arrayList.add("Vijay") 
    println(".......print ArrayList.......") 
    for(i in arrayList) { 
        println(i) 
    } 
    println(".......arrayList.clear().......") 
    arrayList.clear() 
 
    for(i in arrayList) { 
        println(i) 
    } 
    println(".......arrayList.......") 
    println(arrayList) 
} 

Выход:

.......print ArrayList....... 
Ajay 
Vijay 
Prakash 
Rohan 
Vijay 
.......arrayList.clear()....... 
.......arrayList....... 
[] 

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