Kotlin 中List,Set,Map的创建与使用

目录

[1. List 的使用](#1. List 的使用)

[1.1 不可变 List](#1.1 不可变 List)

[1.2 可变 List](#1.2 可变 List)

[2. Set 的使用](#2. Set 的使用)

[2.1 不可变 Set](#2.1 不可变 Set)

[2.2 可变 Set](#2.2 可变 Set)

[3. Map 的使用](#3. Map 的使用)

[3.1 不可变Map](#3.1 不可变Map)

[3.2 可变Map](#3.2 可变Map)


本篇主要为已经有Java基础的同学展示Kotlin语言中的List,Set,Map的创建和使用,所以Java代码省略,主要展示Kotlin代码。

1. List 的使用

1.1 不可变 List

Kotlin 中集合分为可变集合与不可变集合,我们在实际项目中可以根据需求来进行选择,减少性能消耗,如下,创建不可变集合只需要调用 listOf 方法即可,然后我们可以添加泛型为 Int 。

Kotlin 复制代码
val list = listOf<Int>() 

然后我们调用 add 添加方法和 remove 删除方法,都爆红显示错误,调用get方法则不爆红。

也能看出,不可变集合list一旦创建,不能进行增删改,是固定死的。

1.2 可变 List

创建可变集合list,需要调用 mutableListOf,在不可变方法的前面加上 mutable,翻译过来即为可变的。

Kotlin 复制代码
var mutableListOf = mutableListOf<Int>()
mutableListOf.add(1)
mutableListOf.remove(1)
mutableListOf.set(2,3)
println(mutableListOf)

2. Set 的使用

2.1 不可变 Set

创建不可变Set的方法如下,与刚才一样,创建之后不能进行增删改;

Kotlin 复制代码
var set = setOf<Int>()
2.2 可变 Set

创建可变Set的方法,调用方法 mutableSetOf,创建之后和Java中的普通Set 没有什么区别,

Kotlin 复制代码
var mutableSetOf = mutableSetOf<Int>()
        mutableSetOf.add(666)
        mutableSetOf.remove(666)

3. Map 的使用

3.1 不可变Map

如下图,调用mapOf方法创建不可变Map,然后我们尝试添加元素,添加爆红显示错误

调用 add 添加方法,代码爆红,不能进行添加操作。

3.2 可变Map

创建可变Map,调用 mutableMapOf 即可,可以进行增上改查替换等众多操作

Kotlin 复制代码
var mutableMapOf = mutableMapOf<Int, Int>()
        mutableMapOf.put(1,2)
        mutableMapOf.replace(1,6)
        mutableMapOf.remove(1)
相关推荐
我命由我1234512 小时前
Android 开发问题:TopAppBar 和 topAppBarColors API is experimental...
android·java·java-ee·kotlin·android studio·android jetpack·android-studio
Kapaseker15 小时前
没想到吧!Skill 也可以测试 — 小白都看得懂的 Skill 教程
android·人工智能·kotlin
我命由我1234515 小时前
Android 开发问题:使用 AndroidTreeView 时,自定义视图无法撑满父容器
android·java·java-ee·kotlin·android studio·android-studio·android runtime
用户45989204565161 天前
一套 KMP 多仓库版本治理工作流:用 Version Catalog + CI 把发版流水线自动化
前端·kotlin
独隅1 天前
KMP 全栈进化:Koog 框架打造纯 Kotlin AI Agent 实战效果
开发语言·人工智能·kotlin
pengyu2 天前
【Kotlin 协程修仙录 · 元婴境 · 中阶】 | 操作符真解:Flow 中间操作符与数据流变幻术
android·kotlin
pengyu2 天前
【Kotlin 协程修仙录 · 元婴境 · 初阶】 | 冷流初啼:Flow 的基础与响应式编程的入门
android·kotlin
Kapaseker3 天前
破坏性更新 - 解读 Jetpack Compose 1.12
android·kotlin
Android-Flutter3 天前
android LeakCanary 工作原理 详解
android·kotlin
Android-Flutter3 天前
android 自定义view 详解
android·kotlin