Kotlin ArrayList: arrayListOf()函式


arrayListOf()ArrayList類的函式。 ArrayList是可變的,這意味著它允許讀取和寫入更新功能。 arrayListOf()函式返回ArrayList型別。

arrayListOf()函式的語法

inline fun <T> arrayListOf(): ArrayList<T> (source)  
// 
fun <T> arrayListOf(vararg elements: T): ArrayList<T> (source)

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實現中不執行任何操作。

arrayListOf()範例1

下面建立一個arrayListOf()函式的簡單範例。

fun main(args: Array<String>){  
     var arrayList = arrayListOf<Int>(4,7,12)  
      for(element in arrayList){  
        println(element)  
    }  
}

執行上面範例程式碼,得到以下結果 -

4
7
12

arrayListOf()範例2

更具體地說,可以定義arrayListOf()函式的泛型型別,例如:arrayListOf <Int>()arrqayListOf <String>()arrayListOf <Any>()。 下面來看看一個例子。

fun main(args: Array<String>){

    var intArrayList: ArrayList<Int> = arrayListOf<Int>(1,2,3)
    var stringArrayList: ArrayList<String> = arrayListOf<String>("Java","PHP","Kotlin")
    var anyArrayList: ArrayList<Any> = arrayListOf<Any>(1,2,3,"Java","PHP","Kotlin")
    println("------ print int ArrayList ------")
    for(element in intArrayList){
        println(element)
    }
    println()
    println("------ print string ArrayList ------")
    for(element in stringArrayList){
        println(element)
    }
    println()
    println("------ print any ArrayList ------")
    for(element in anyArrayList){
        println(element)
    }
}

執行上面範例程式碼,得到以下結果 -

------ print int ArrayList ------
1
2
3

------ print string ArrayList ------
Java
PHP
Kotlin

------ print any ArrayList ------
1
2
3
Java
PHP
Kotlin

arrayListOf()範例3 - iterator()函式

ArrayList類的元素也可以使用內建的iterator()函式進行遍歷。 例如:

fun main(args: Array<String>){
    val list: ArrayList<String> = arrayListOf<String>()

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

    println(".......print ArrayList.......")
    val itr = list.iterator()
    while(itr.hasNext()) {
        println(itr.next())
    }
}

執行上面範例程式碼,得到以下結果 -

.......print ArrayList.......
PHP
Java
Kotlin

arrayListOf()範例4 - get()方法

arrayListOf()get()函式用於檢索指定索引處的元素。 例如:

fun main(args: Array<String>){

    val list: ArrayList<String> = arrayListOf<String>()

    list.add("PHP")
    list.add("Java")
    list.add("Python")
    list.add("SQL")
    list.add("Swift")
    println(".......print list.......")
    for (i in list) {
        println(i)
    }
    println(".......list.get(2).......")
    println( list.get(2))
}

執行上面範例程式碼,得到以下結果 -

.......print list.......
PHP
Java
Python
SQL
Swift
.......list.get(2).......
Python

arrayListOf()範例5 - set()方法

arrayListOf()set()函式用於在給定索引處設定給定元素,並替換該索引中已存在的元素。 例如:

fun main(args: Array<String>){

    val list: ArrayList<String> = arrayListOf<String>()

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

    println(".......print list.......")
    for (i in list) {
        println(i)
    }
    println(".......arrayList.set(2,\"Kotlin\").......")
    list.set(2,"Kotlin-New")
    println(".......print ArrayList.......")
    for (i in list) {
        println(i)
    }
}

執行上面範例程式碼,得到以下結果 -

.......print list.......
Java
Kotlin
Python
.......arrayList.set(2,"Kotlin").......
.......print ArrayList.......
Java
Kotlin
Kotlin-New

arrayListOf()範例 - 新增和列印員工資料

下面是建立ArrayList類的arrayListOf()函式的另一個例子。 在這個例子中,新增和遍歷Employee類資料。Employee類是bean類,它定義了Employee的屬性。

// 定義類
class Employee(var id: Int, var name: String, var phone: Int, var city: String)

// 主函式
fun main(args: Array<String>){
    val arrayList: ArrayList<Employee> = arrayListOf<Employee>()
    val e1 = Employee(1010, "Maxsu", 1359955555, "海口")
    val e2 = Employee(1020, "王小牛", 1808844443, "北京")
    val e3 = Employee(1030, "張三豐", 1369845422, "上海")
    arrayList.add(e1)
    arrayList.add(e2)
    arrayList.add(e3)

    for (e in arrayList) {
        println("${e.id} ${e.name} ${e.phone} ${e.city}")
    }
}

執行上面範例程式碼,得到以下結果 -

1010 Maxsu 1359955555 海口
1020 王小牛 1808844443 北京
1030 張三豐 1369845422 上海