当前位置: 首页 > news >正文

Kotlin基本语法3集合

1.List集合 

 1.1 只读List

fun main() {
    val list = listOf("Jason", "Jack", "Jacky")
    println(list.getOrElse(3){"Unknown"})
    println(list.getOrNull(3)?:"Unknown")
}

 1.2 可变List

fun main() {
    val mutableList = mutableListOf("Jason", "Jack", "Jacky")
    mutableList.add("Jimmy")
    mutableList.remove("Jack")
    mutableList.forEach(::println)

    val toList = mutableList.toList()

    println(toList===mutableList)

}

 

1.2.mutator函数

fun main() {
    val mutableList = mutableListOf("Jason", "Jack", "Jacky")


    mutableList += "Jimmy"
    mutableList -= "Jason"
    mutableList.removeIf{it.contains("Jack")}

    println(mutableList)

}

 1.3. 遍历元素

fun main() {
    val list = listOf("Jason", "Jack", "Jacky")
    for (s in list) {
        println(s)
    }
    list.forEach{
        println(it)
    }
    list.forEachIndexed { index, s ->
        println("$index $s")
    }
}

 1.4 解构语法过滤元素

fun main() {
    val list = listOf("Jason", "Jack", "Jacky")
    val(zeroIndexEnum,_,twoIndexEnum)=list
    println(zeroIndexEnum)
    println(twoIndexEnum)

}

2. Set

2.1 只读Set

 

fun main() {
    val set = setOf("Jason", "Jack", "Jacky", "Jack")
    val elementAt = set.elementAt(2) //这里用这个方法取下表
    val elementAtOrNull = set.elementAtOrNull(5)//这个方法下表越界了,不会抛异常而是给null
    
    println(elementAt)


}

2.2 可变Set集合 

fun main() {
    val set = mutableSetOf("Jason", "Jack", "Jacky", "Jack")
   set+="Jimmy"
    println(set)


}

 2.3 集合转换与快捷函数

fun main() {
    val set = mutableSetOf("Jason", "Jack", "Jacky", "Jack")
   set+="Jimmy"
    println(set)


    val listOf = listOf("Jason", "Jack", "Jacky", "Jack")
    val toList = listOf.toSet().toList()//不是一个对象了

    val distinct = listOf.distinct()//不会修改原集合
    println(listOf)
    println(distinct)


}

3.数组类型

 

import java.io.File

fun main() {
    val intArray:IntArray = intArrayOf(10, 20, 30)
    val toIntArray:IntArray = listOf(10, 20, 30).toIntArray()
    val array:Array<File> = arrayOf(File("xx"), File("xx"))


}

4.Map 

4.1 Map的创建

fun main() {
    val map:Map<String,Int> = mapOf("Jack" to 20, "Jason" to 18, "Jack" to 30)
    mapOf(Pair("Jimmy",20),Pair("Jason",16))

}

4.2 读取Map的值

fun main() {
    val map:Map<String,Int> = mapOf("Jack" to 20, "Jason" to 18, "Jack" to 30)
    println(map["Jack"])
    println(map.getValue("Jack"))

    println(map.getOrElse("Rose"){"Unknown"})
    println(map.getOrDefault("Rose",0))


}

 

4.3 Map的遍历

fun main() {
    val map:Map<String,Int> = mapOf("Jack" to 20, "Jason" to 18, "Jacky" to 30)


    map.forEach{
        println("${it.key}, ${it.value}")
    }

    map.forEach { (key: String, value: Int) ->
        println("$key $value")
    }
}

 4.4 可变Map集合

fun main() {
    val map:MutableMap<String,Int> = mutableMapOf("Jack" to 20, "Jason" to 18, "Jacky" to 30)

    map += "Jimmy" to 30

    map.put("Ji",3)

    val orPut = map.getOrPut("Rose") { 18 }//如果没有就添加进去

    println(map)


}

相关文章:

  • HTML-多媒体嵌入-MDN文档学习笔记
  • 订餐|网上订餐系统|基于springboot的网上订餐系统设计与实现(源码+数据库+文档)
  • python-自动化篇-办公-Excel-Openpyxl库
  • docker 2:安装
  • 深度学习基础之《TensorFlow框架(4)—Operation》
  • ZigBee学习——BDB
  • 使用word2vec+tensorflow自然语言处理NLP
  • 如何用 npm 运行本地 js 文件
  • MySQL数据库⑪_C/C++连接MySQL_发送请求
  • WEB APIs(2)
  • 8 scala的伴生对象
  • C#学习(十三)——多线程与异步
  • C# Avalonia 折线图
  • Hexo删除主题
  • 飞机大作战(c语言)
  • 多目标检测与跟踪技术详解
  • 如何查看电脑连接的wifi的密码
  • Python爬虫html网址实战笔记
  • Linux(三)--文件系统
  • Quantitative Analysis: PIM Chip Demands for LLAMA-7B inference
  • 国务院任免国家工作人员:颜清辉任人社部副部长
  • 魔都眼|静安光影派对五一启幕:苏河湾看徐悲鸿艺术画作
  • 违规行为屡禁不止、责任边界模糊不清,法治日报:洞穴探险,谁为安全事故买单?
  • 海量数据处于“原矿”状态,数据价值释放如何破局?
  • 葡萄牙、西班牙突发大范围停电,交通和通信服务受到严重影响
  • 日月谭天丨赖清德强推“脱中入北”是把台湾带向死路