美文网首页
kotlin(五):基本语法之集合

kotlin(五):基本语法之集合

作者: 小川君 | 来源:发表于2018-09-05 10:58 被阅读0次
kotlin中的集合分为两类:可变集合与不可变集合

Iterable接口声明了Kotlin中集合的通用方法,是最基本的接口
MutableIterable接口继承Iterable,继承该接口的可以被迭代,可以在迭代期间移除元素
Collection接口继承了Iterable,是集合通用的接口,但是只封装了只读的方法
MutableConllection<E> 接口继承了Iterable和Collection,封装了添加和移除的方法

  • List
    List<E>接口继承于Collection<E>,对于存放其中的元素只提供只读操作,其他的特性跟JAVA中的list是一样的,初始化为listOf()
var items = listOf<Int>(1,2,3,4,5,6)
    for (item in items){
        println("item  $item")
    }
    var it: Iterator<Int> = items.iterator()
    while(it.hasNext()){
         println("it.next  ${it.next()}")
    }
        
    item  1
    item  2
    item  3
    item  4
    item  5
    item  6
    it.next  1
    it.next  2
    it.next  3
    it.next  4
    it.next  5
    it.next  6        
  • MutableList<T>接口继承于List<T>,MutableCollection<E>,并对只读集合进行了扩展,增加了添加和删除操作,特性同List,不过添加了对集合的修改操作,对象创建通过mutableListof() ,这里注意下toList()函数,MutableCollection.toList()返回一个只读集合List
  • Map
    Map并没有继承于Collection接口,与list一样分为只读和可变两种map
    创建方式通过mapOf创建,
var items = mapOf<Int,String>(0 to "c",1 to "h",2 to "u",3 to "a",4 to "h")
items.forEach{
    println("key:${it.key}   value: ${it.value}")
}
输出:   
    key:0   value: c
    key:1   value: h
    key:2   value: u
    key:3   value: a
    key:4   value: h
    
其次还可以通过Pair直接创建 
var  itemms = mapOf(Pair(0,"c"), Pair(1,"h"),Pair(2,"u"),Pair(3,"a"),Pair(3,"h"))
var  IteratorIterator = itemms.iterator()
while (IteratorIterator.hasNext()){
    println("parir  " + IteratorIterator.next())
}

输出为:
    parir  0=c
    parir  1=h
    parir  2=u
    parir  3=h
    
    可以看到 下标为3的值变成了h,本来应该是a,然后被覆盖了,因此,Pair的第一个入参可以看做是Map的key值,第二个入参则是Map的value值,其他关于Pair的知识,暂不介绍

使用HashMap val hashMap = hashMapOf(1 to bookA, 2 to bookB)
使用LinkedHashMap val linkedHashMap = linkedMapOf(1 to bookA, 2 to bookB)

  • MutableMap 可对集合执行操作的集合
  • Set
  • MutableSet 可变集合

相关文章

  • kotlin(五):基本语法之集合

    kotlin中的集合分为两类:可变集合与不可变集合 Iterable接口声明了Kotlin中集合的通用方法,是最基...

  • Kotlin 进阶之路 目录

    Kotlin 进阶之路 目录 Kotlin 进阶之路1 基础语法Kotlin 进阶之路2 集合类型Kotlin 进...

  • Kotlin

    Android Kotlin 编译gradle基本配置 - 简书 五分钟学会 Kotlin 语法 - 简书 Kot...

  • kotlin之基本语法

    函数 变量 字符串模板 类和属性 自定义访问器 目录和包 和java类似,但是kotlin不区分导入的是类还是函数...

  • Kotlin之基本语法

    创建 Javabean 对象 关键字:data 包含以下所有的属性: getters (and setters i...

  • Kotlin 惯用语法

    Idioms 惯用语法 官方文档 Kotlin 惯用语法: Kotlin 中随机和经常使用的语法的集合。 创建 D...

  • kotlin进阶—函数、泛型、高级特性

    以下是我的kotlin系列文章kotlin基础知识—基本语法(一)kotlin基础知识—基本语法(二) 前言 我个...

  • Kotlin学习之可变与不可变集合

    Kotlin学习之可变与不可变集合 一、可变集合与不可变集合有哪些? Kotlin集合框架在kotlin.coll...

  • Kotlin资源

    语法 集合库 函数式思维 官网 官网 官方博客 官方博客 Kotlin源码 Kotlin源码 Kotlin 从入门...

  • Kotlin的基本语法五

    1.类 Kotlin 中使用关键字 class 声明类 类声明由类名、类头(指定其类型参数、主构造函数等)以及由花...

网友评论

      本文标题:kotlin(五):基本语法之集合

      本文链接:https://www.haomeiwen.com/subject/sktawftx.html