Kotlin 基础三

Kotlin 基础提升三

仅供于作为学习笔记,希望也能够给大家带来帮助,如果存在错误也请大家指正。

1. List 相关操作

1. getOrElse 和 getOrNull 方法,是安全索引取值函数

  • getOrElse 需要两个参数,第一个是索引值,第二个是能提供默认值的lambda表达式,如果索引值不存在,可用来代替异常

  • getOrNull 返回null 经过,而不是抛出异常

        val listOf = listOf("jason", "jack", "jacky")
    
        println(listOf.getOrElse(4){"unknown"})
        println(listOf.getOrNull(4))
        println(listOf.getOrNull(4) ?: "unknown")
    

2.可变列表

可变列表之间支持相互转换

    val mutableList  = mutableListOf("jason", "jack", "jacky")
    mutableList.add("jimmy") //添加元素
    mutableList.remove("jone") // 删除元素
    
    listOf("jason", "jack", "jacky").toMutableList() //转为可变列表
    mutableList.toList() //转为不可变列表

mutator 函数:能修改可变列表的函数有个统一的名字:mutator 函数

3.运算符重载

val mutableList  = mutableListOf("jason", "jack", "jacky")

mutableList+= "Jimmy"
mutableList-= "jack"

4.removeIf

根据 lambada 指定条件删除元素

val mutableList  = mutableListOf("jason", "jack", "jacky")

mutableList.removeIf{it.contains("jack)}

5.遍历元素

for,forEach,forEachIndexed

    val list = listOf("jason","jack","jacky")

//    method 1
    for (el in list)
    {
        println(el)
    }

//    method 2
    list.forEach{
        print(it)
    }

//    method 3
    list.forEachIndexed { index, s ->
        println("$index $s")
        //index 索引
        //s 元素
    }

6. 解构

当不需要从中获取元素时,当中可以使用_替代

val list = listOf("jason","jack","jacky")
val (origin,_,proxy) = list //

2. Map 操作

1.map 的创建

val mapOf = mapOf("Jack" to 20, "Jason" to 18)
val mapOf2 = mapOf(Pair("Jack",20),Pair("Jason",18))  
val mutableMap = mutableMapOf("Jack" to 20, "Jason" to 18) //可变Map

2. map的读取

mapOf["Jack"]
mapOf.getValue("Jack")
mapOf.getOrElse("Rose"){"Unknown"}
mapOf.getOrDefault("Rose" , 0)

3. map的遍历

mapOf.forEach{
    println("${it.key}  ${it.value}")
}
mapOf.forEach{ (key, value) ->
    println("$key  $value")
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值