Kotlin - mutableListOf()

Kotlin - mutableListOf() 首页 / Kotlin入门教程 / Kotlin - mutableListOf()

Kotlin MutableList是一个接口和元素的通用集合。 MutableList接口本质上是可变的。它继承了Collection <T>类的形式。 MutableList接口的方法支持读取和写入函数。一旦声明了MutableList中的元素,就可以在其中添加或删除更多元素,因此它没有固定的大小长度。

要使用MutableList接口,无涯教程使用其称为mutableListOf()或mutableListOf<E>()的函数。

MutableList接口声明

interface MutableList<E> : List<E>, MutableCollection<E> (source)

Kotlin MutableList示例1

无涯教程来看一个使用mutableListOf()函数并遍历其元素的MutableList示例。

链接:https://www.learnfk.comhttps://www.learnfk.com/kotlin/kotlin-mutablelist-mutablelistof.html

来源:LearnFk无涯教程网

fun main(args: Array<String>){
    var mutableList = mutableListOf("Ajay","Vijay","Learnfk","Vijay")

    for(element in mutableList){
        println(element)
    }
    println()
    for(index in 0..mutableList.size-1){
        println(mutableList[index])
    }
}

输出:

Ajay
Vijay
Learnfk
Vijay

Ajay
Vijay
Learnfk
Vijay

Kotlin MutableList示例2

MutableList接口的mutableListOf()函数提供了在声明后添加元素的函数。 MutableList也可以在以后声明为空并添加元素,但是在这种情况下,无涯教程需要定义其通用类型。例如:

无涯教程网

fun main(args: Array<String>){
    var mutableList1 = mutableListOf("Ajay","Vijay")
    mutableList1.add("Learnfk")
    mutableList1.add("Vijay")

    var mutableList2 = mutableListOf<String>()
    mutableList2.add("Ajeet")
    mutableList2.add("Learnfk")
    mutableList2.add("Akash")

    for(element in mutableList1){
        println(element)
    }
    println()
    for(element in mutableList2){
        println(element)
    }
}

输出:

Ajay
Vijay
Learnfk
Vijay

Ajeet
Learnfk
Akash

Kotlin MutableList示例3

更具体地说,无涯教程可以提供MutableList接口的通用类型,例如mutableListOf <Int>(),mutableListOf <String>(),mutableListOf <Any>()。 mutableListOf <Int>()仅采用整数值,mutableListOf <String>()仅采用字符串值,而mutableListOf <Any>()同时采用不同的数据类型值。让无涯教程来看一个例子。

fun main(args: Array<String>){
    var mutableListInt: MutableList<Int> = mutableListOf<Int>()
    var mutableListString: MutableList<String> = mutableListOf<String>()
    var mutableListAny: MutableList<Any> = mutableListOf<Any>()

    mutableListInt.add(5)
    mutableListInt.add(7)
    mutableListInt.add(10)
    mutableListInt.add(2,15) //add element 15 at index 2

    mutableListString.add("Ajeet")
    mutableListString.add("Ashu")
    mutableListString.add("Mohan")

    mutableListAny.add("Sunil")
    mutableListAny.add(2)
    mutableListAny.add(5)
    mutableListAny.add("Raj")

    println(".....print Int type.....")
    for(element in mutableListInt){
        println(element)
    }
    println()
    println(".....print String type.....")
    for(element in mutableListString){
        println(element)
    }
    println()
    println(".....print Any type.....")
    for(element in mutableListAny){
        println(element)
    }
}

输出:

.....print Int type.....
5
7
15
10

.....print String type.....
Ajeet
Ashu
Mohan

.....print Any type.....
Sunil
2
5
Raj

Kotlin MutableList示例4

让无涯教程看看使用mutableListOf <T>()函数使用MutableList接口的不同函数。

fun main(args: Array<String>){
    var mutableList = mutableListOf<String>()

    mutableList.add("Ajay")//index 0
    mutableList.add("Vijay")//index 1
    mutableList.add("Learnfk")//index 2

    var mutableList2 = mutableListOf<String>("Rohan","Raj")
    var mutableList3 = mutableListOf<String>("Dharmesh","Umesh")
    var mutableList4 = mutableListOf<String>("Ajay","Dharmesh","Ashu")

    println(".....mutableList.....")
    for(element in mutableList){
        println(element)
    }
    println(".....mutableList[2].....")
    println(mutableList[2])
    mutableList.add(2,"Rohan")
    println("......mutableList.add(2,\"Rohan\")......")
    for(element in mutableList){
        println(element)
    }
    mutableList.add("Ashu")
    println(".....mutableList.add(\"Ashu\")......")
    for(element in mutableList){
        println(element)
    }
    mutableList.addAll(1,mutableList3)
    println("... mutableList.addAll(1,mutableList3)....")
    for(element in mutableList){
        println(element)
    }
    mutableList.addAll(mutableList2)
    println("...mutableList.addAll(mutableList2)....")
    for(element in mutableList){
        println(element)
    }
    mutableList.remove("Vijay")
    println("...mutableList.remove(\"Vijay\")....")
    for(element in mutableList){
        println(element)
    }
    mutableList.removeAt(2)
    println("....mutableList.removeAt(2)....")
    for(element in mutableList){
        println(element)
    }
    mutableList.removeAll(mutableList2)
    println("....  mutableList.removeAll(mutableList2)....")
    for(element in mutableList){
        println(element)
    }

    println("....mutableList.set(2,\"Ashok\")....")
    mutableList.set(2,"Ashok")
    for(element in mutableList){
        println(element)
    }

    println(".... mutableList.retainAll(mutableList4)....")
    mutableList.retainAll(mutableList4)
    for(element in mutableList){
        println(element)
    }
    println(".... mutableList2.clear()....")
    mutableList2.clear()

    for(element in mutableList2){
        println(element)
    }
    println(".... mutableList2 after mutableList2.clear()....")
    println(mutableList2)

    println("....mutableList.subList(1,2)....")
    println(mutableList.subList(1,2))

}

输出:

.....mutableList.....
Ajay
Vijay
Learnfk
.....mutableList[2].....
Learnfk
......mutableList.add(2,"Rohan")......
Ajay
Vijay
Rohan
Learnfk
.....mutableList.add("Ashu")......
Ajay
Vijay
Rohan
Learnfk
Ashu
... mutableList.addAll(1,mutableList3)....
Ajay
Dharmesh
Umesh
Vijay
Rohan
Learnfk
Ashu
...mutableList.addAll(mutableList2)....
Ajay
Dharmesh
Umesh
Vijay
Rohan
Learnfk
Ashu
Rohan
Raj
...mutableList.remove("Vijay")....
Ajay
Dharmesh
Umesh
Rohan
Learnfk
Ashu
Rohan
Raj
....mutableList.removeAt(2)....
Ajay
Dharmesh
Rohan
Learnfk
Ashu
Rohan
Raj
....  mutableList.removeAll(mutableList2)....
Ajay
Dharmesh
Learnfk
Ashu
....mutableList.set(2,"Ashok")....
Ajay
Dharmesh
Ashok
Ashu
.... mutableList.retainAll(mutableList4)....
Ajay
Dharmesh
Ashu
.... mutableList2.clear()....
.... mutableList2 after mutableList2.clear()....
[]
....mutableList.subList(1,2)....
[Dharmesh]

祝学习愉快!(内容编辑有误?请选中要编辑内容 -> 右键 -> 修改 -> 提交!)

技术教程推荐

Service Mesh实践指南 -〔周晶〕

机器学习40讲 -〔王天一〕

Android开发高手课 -〔张绍文〕

Node.js开发实战 -〔杨浩〕

Kafka核心源码解读 -〔胡夕〕

人人都用得上的写作课 -〔涵柏〕

技术面试官识人手册 -〔熊燚(四火)〕

Spring编程常见错误50例 -〔傅健〕

PyTorch深度学习实战 -〔方远〕

好记忆不如烂笔头。留下您的足迹吧 :)