Kotlin ArrayList类

Kotlin ArrayList类

ArrayList类用于创建动态数组。 这意味着可以根据需要增加或减少ArrayList类的大小。 ArrayList类提供读写功能。

ArrayList类是非同步的,它可能包含重复的元素。 ArrayList类的元素在索引的基础上随机访问。

Kotlin ArrayList的构造函数

构造函数 描述
ArrayList<E>() 它用于创建一个空的ArrayList
ArrayList(capacity: Int) 它用于创建指定容量的ArrayList
ArrayList(elements: Collection<E>) 它用于创建从集合元素填充的ArrayList

Kotlin 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(不包含)的元素范围。
open fun set(index: Int, element: E): E 它用于将当前列表中指定位置的元素替换为指定元素。
open fun toArray(): Array<Any?> 它用于返回具有此集合元素的Array <Any?>类型的新数组。
open fun toString(): String 它用于返回对象的字符串表示形式。
fun trimToSize() 它在此ArrayList实现中不执行任何操作。

ArrayList示例1- 空ArrayList

下面创建一个ArrayList类的简单示例,使用String的空ArrayList并之后添加元素。

fun main(args: Array<String>){

    val arrayList = ArrayList<String>()//Creating an empty arraylist
    arrayList.add("Java")//Adding object in arraylist
    arrayList.add("Charp")
    arrayList.add("Python")
    arrayList.add("PHP")
    arrayList.add("SQL")
    println(".......打印 ArrayList 结果如下 .......")
    for (i in arrayList) {
        println(i)
    }
}

执行上面示例代码,得到以下结果 -

.......打印 ArrayList 结果如下 .......
Java
Charp
Python
PHP
SQL

ArrayList示例2 - 初始化ArrayList容量

创建一个ArrayList类,初始化它的初始容量。ArrayList类的容量不固定,可以根据需要在程序中更改。

fun main(args: Array<String>){

    val arrayList1 = ArrayList<String>(5)
    arrayList1.add("C++")//Adding object in arraylist
    arrayList1.add("Object-C")
    arrayList1.add("Python")
    arrayList1.add("Java")
    arrayList1.add("SQL")
    println(".......print ArrayList1......")
    for (i in arrayList1) {
        println(i)
    }
    println("size of arrayList1 = "+arrayList1.size)
    val arrayList2 = ArrayList<Int>(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......
C++
Object-C
Python
Java
SQL
size of arrayList1 = 5
......print ArrayList2......
14
20
80
size of arrayList2 = 3

ArrayList示例3 - 使用集合填充ArrayList

Kotlin ArratList类中的元素也可以使用其他集合添加。ArrayList类由泛型类型声明。 ArrayList类的元素也可以使用iterator()函数遍历。 例如:

fun main(args: Array<String>){

    val arrayList: ArrayList<String> = ArrayList<String>(5)
    var list: MutableList<String> = mutableListOf<String>()

    list.add("Java")
    list.add("PHP")
    list.add("Python")
    list.add("Kotlin")

    arrayList.addAll(list)
    println("......print ArrayList......")
    val itr = arrayList.iterator()
    while(itr.hasNext()) {
        println(itr.next())
    }
    println("size of arrayList = "+arrayList.size)
}

执行上面示例代码,得到以下结果 -

......print ArrayList......
Java
PHP
Python
Kotlin
size of arrayList = 4

ArrayList示例4 - 使用get()方法

ArrayList类的get()函数用于检索给定指定索引处的元素。 例如:

fun main(args: Array<String>){

    val arrayList: ArrayList<String> = ArrayList<String>(5)

    arrayList.add("Python")
    arrayList.add("Java")
    arrayList.add("PHP")
    arrayList.add("SQL")
    arrayList.add("Kotlin")
    arrayList.add("Swift")
    println(".......print ArrayList.......")
    for (i in arrayList) {
        println(i)
    }
    print("arrayList.get(2)=>")
    println( arrayList.get(2))
    print("arrayList.get(5)=> ")
    println( arrayList.get(5))
}

执行上面示例代码,得到以下结果 -

.......print ArrayList.......
Python
Java
PHP
SQL
Kotlin
Swift
arrayList.get(2)=>PHP
arrayList.get(5)=> Swift

ArrayList示例5 - set()方法

ArrayList类的set()函数用于在给定索引处设置元素,并替换在指定索引处存在的元素。 例如:

fun main(args: Array<String>){

    val arrayList: ArrayList<String> = ArrayList<String>(5)

    arrayList.add("PHP")
    arrayList.add("JAVA")
    arrayList.add("Python")
    arrayList.add("Swift")
    arrayList.add("Kotlin")
    println(".......print ArrayList.......")
    for (i in arrayList) {
        println(i)
    }
    println(".......arrayList.set(2,"NewLanguage").......")
    arrayList.set(2,"NewLanguage")
    println(".......print ArrayList.......")
    for (i in arrayList) {
        println(i)
    }
}

执行上面示例代码,得到以下结果 -

.......print ArrayList.......
PHP
JAVA
Python
Swift
Kotlin
.......arrayList.set(2,"NewLanguage").......
.......print ArrayList.......
PHP
JAVA
NewLanguage
Swift
Kotlin

ArrayList示例6 - indexOf()函数

ArrayList类的indexOf()函数用于检索第一次出现的元素的索引值,如果列表中不存在指定的元素,则返回-1。 例如:

fun main(args: Array<String>){

    val arrayList: ArrayList<String> = ArrayList<String>(5)

    arrayList.add("PHP")
    arrayList.add("Python")
    arrayList.add("Java")
    arrayList.add("SQL")
    arrayList.add("Kotlin")
    println(".......print ArrayList.......")
    for (i in arrayList) {
        println(i)
    }
    println(".......arrayList.indexOf("Kotlin").......")
    println(arrayList.indexOf("Kotlin"))
}

执行上面示例代码,得到以下结果 -

.......print ArrayList.......
PHP
Python
Java
SQL
Kotlin
.......arrayList.indexOf("Kotlin").......
4

ArrayList示例7 - lastIndexOf()函数

ArrayList类的lastindexOf()函数用于检索最后一次出现的元素的索引值,如果列表中不存在指定的元素,则返回-1。 例如:

fun main(args: Array<String>){

    val arrayList: ArrayList<String> = ArrayList<String>(5)

    arrayList.add("PHP")
    arrayList.add("Java")
    arrayList.add("Kotlin")
    arrayList.add("C++")
    arrayList.add("Python")
    arrayList.add("Kotlin")
    arrayList.add("SQL")
    println(".......print ArrayList.......")
    for (i in arrayList) {
        println(i)
    }
    println(".......arrayList.lastIndexOf("Kotlin").......")
    println(arrayList.lastIndexOf("Kotlin"))
}

执行上面示例代码,得到以下结果 -

.......print ArrayList.......
PHP
Java
Kotlin
C++
Python
Kotlin
SQL
.......arrayList.lastIndexOf("Kotlin").......
5

ArrayList示例8 - remove()函数

ArrayList类的remove()函数用于删除第一次出现的元素(如果它存在于列表中)。 例如:

fun main(args: Array<String>){

    val arrayList: ArrayList<String> = ArrayList<String>(5)

    arrayList.add("Python")
    arrayList.add("Java")
    arrayList.add("Kotlin")
    arrayList.add("PHP")
    arrayList.add("Java")
    println(".......print ArrayList.......")
    for (i in arrayList) {
        println(i)
    }
    println(".......arrayList.remove("Java").......")
    arrayList.remove("Java")
    for (i in arrayList) {
        println(i)
    }
}

执行上面示例代码,得到以下结果 -

.......print ArrayList.......
Python
Java
Kotlin
PHP
Java
.......arrayList.remove("Java").......
Python
Kotlin
PHP
Java

ArrayList示例9 - removeAt()函数

ArrayList类的removeAt()函数用于从列表中删除指定索引的元素。 例如:

fun main(args: Array<String>){

    val arrayList: ArrayList<String> = ArrayList<String>(5)

    arrayList.add("PHP")
    arrayList.add("Java")
    arrayList.add("Kotlin")
    arrayList.add("SQL")
    arrayList.add("C++")
    println(".......print ArrayList.......")
    for (i in arrayList) {
        println(i)
    }
    println(".......arrayList.remove(3).......")
    arrayList.removeAt(3)
    for (i in arrayList) {
        println(i)
    }
}

执行上面示例代码,得到以下结果 -

.......print ArrayList.......
PHP
Java
Kotlin
SQL
C++
.......arrayList.remove(3).......
PHP
Java
Kotlin
C++

ArrayList示例10 - clear()函数

ArrayList类的clear()函数用于删除(清除)列表的所有元素。 例如:

fun main(args: Array<String>){

    val arrayList: ArrayList<String> = ArrayList<String>(5)

    arrayList.add("PHP")
    arrayList.add("Java")
    arrayList.add("Python")
    arrayList.add("Kotlin")
    arrayList.add("SQL")
    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.......
PHP
Java
Python
Kotlin
SQL
.......arrayList.clear().......
.......arrayList.......
[]

目录

数组

字符串

注解

反射