Kotlin集合操作 ② ( MutableList 可变列表集合 | 修改 MutableList 集合的 mutator 函数 )

Posted 韩曙亮

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Kotlin集合操作 ② ( MutableList 可变列表集合 | 修改 MutableList 集合的 mutator 函数 )相关的知识,希望对你有一定的参考价值。

文章目录





一、MutableList 可变列表集合



使用 listOf 函数 创建的 List 集合 只读列表集合 ;

使用 mutableListOf 函数 创建的 MutableList 集合可变列表集合 ;


调用 MutableList#toList 函数 , 可以 将 可变列表集合 转为 只读列表集合 ;

调用 List#toMutableList 函数 , 可以 将 只读列表集合 转为 可变列表集合 ;


代码示例 :

fun main() 
    // 创建可变列表集合
    var mutableList = mutableListOf("Tom", "Jerry")
    // 添加元素
    mutableList.add("Jack")
    // 删除元素
    mutableList.remove("Tom")
    println(mutableList)

    // 将 可变列表集合 转为 只读列表集合
    val list: List<String> = mutableList.toList()
    // 将 只读列表集合 转为 可变列表集合
    val mutable: MutableList<String> = list.toMutableList()

执行结果 :

[Jerry, Jack]




二、修改 MutableList 集合的 mutator 函数



修改 MutableList 集合 的 函数 统称为 mutator 函数 ;


1、添加元素运算符 += 和 删除元素运算符 -=


运算符重载 : MutableList 集合 还有一些 运算符重载 , 添加元素运算符 +=删除元素运算符 -= ;

  • 向 MutableList 集合 中添加一些元素 , 可使用 += 运算符 :
mutableList += "Jack"

其效果等同于

mutableList.add("Jack")
  • 从 MutableList 集合 中删除一些元素 , 可使用 -= 运算符 :
mutableList -= "Tom"

其效果等同于

mutableList.remove("Tom")

2、通过 Lambda 表达式筛选要删除的元素


通过 Lambda 表达式筛选要删除的元素 : Lambda 表达式返回 boolean 值 , 如果返回 true , 则删除该元素 , 返回 false 则不处理该元素 ;

fun main() 
    // 创建可变列表集合
    val mutableList = mutableListOf("Tom", "Jerry")
    // 通过 Lambda 表达式筛选要操作的元素
    // 删除包含 字母 T 的元素
    mutableList.removeIf 
        it.contains("T")
    
    println(mutableList)

执行结果 :

[Jerry]

以上是关于Kotlin集合操作 ② ( MutableList 可变列表集合 | 修改 MutableList 集合的 mutator 函数 )的主要内容,如果未能解决你的问题,请参考以下文章

Kotlin集合操作 ② ( MutableList 可变列表集合 | 修改 MutableList 集合的 mutator 函数 )

Kotlin 协程Flow 操作符 ② ( 末端操作符 | collect 操作符 | reduce 操作符 | single 操作符 | first 操作符 | toList 操作符 )

Kotlin 协程Flow 操作符 ② ( 末端操作符 | collect 操作符 | reduce 操作符 | single 操作符 | first 操作符 | toList 操作符 )

如何在kotlin中获取mutableList的mutableList?

Kotlin空安全 ② ( 手动空安全管理 | 空安全调用操作符 ? | let 函数结合空安全调用操作符使用 )

Kotlin常用Collection集合操作整理