Kotlin之“ArrayList”

简介

ArrayList 可以理解为是一个长度可变的集合,在日常开发中使用也比较频繁,这里不写与java中的ArrayList的区别,只单纯的介绍Kotlin中的ArrayList。这里的方法不包括从接口继承来的方法,AbstractMutableList<E>RandomAccess的方法会单独介绍。其中比较好玩的方法,一般都来自AbstractMutableList接口

出身

open class ArrayList<E> : AbstractMutableList<E>,RandomAccess

可以看出ArrayList实现了两个接口,其中:

  • AbstractMutableList 使得它的集合长度可变,并且包含了作为一个List应该具备的基本方法
  • RandomAccess使得它支持快速索引,它里面有三个方法equalshashCode、和toString

构造方法(Constructors)

  • 创建一个空的ArrayList
ArrayList(capacity: Int = 0) 
  • 创建一个被元素集合填充的ArrayList
ArrayList(elements: Collection<E>)

参数

  • size 该集合的大小
open val size: Int
  • modCount 继承来的参数,js中表示该集合的结构变化次数
var modCount: Int

原始方法

  • add
//将元素添加到指定位置
abstract fun add(index: Int, element: E)
//将指定元素添加到集合中
open fun add(element: E): Boolean
  • addAll
//将指定集合中的所有元素全部添加到该集合的指定位置
open fun addAll(index: Int, elements: Collection<E>): Boolean
  • clear
//清除该集合里的所有元素
open fun clear()
  • get
//返回指定位置的元素
open fun get(index: Int): E
  • indexOf
//返回该元素在集合中第一次出现的位置,如果不存在则返回-1
open fun indexOf(element: E): Int
  • lastIndexOf
//与`indexOf`相似,返回该元素在集合中最后一次出现的位置,如果不存在则返回-1
open fun lastIndexOf(element: E): Int
  • remove
//去掉该集合中的指定元素
open fun remove(element: E): Boolean
  • removeAt
//去掉该集合指定位置的元素
abstract fun removeAt(index: Int): E
  • removeRange
//去掉该集合指定位置区间的所有元素,也就是fromIndex~toIndex之间
open fun removeRange(fromIndex: Int, toIndex: Int)
  • set
//用指定元素替换掉该集合中指定位置的元素
abstract fun set(index: Int, element: E): E
  • toArray
//将集合转换成Array
open fun toArray(): Array<Any?>
  • toString
//返回一个表达该集合的字符串
open fun toString(): String

继承来的方法

  • equals
//和其它集合比较是否相等,其中元素必须相等,顺序也必须一致,而且如果两个对象都不为空的话等同于`==`
open fun equals(other: Any?): Boolean
  • hashCode
//返回该list的哈希值
open fun hashCode(): Int
  • iterator
//返回该list的iterator(迭代器),其中包含所有元素
open fun iterator(): MutableIterator<E>
  • listIterator
//返回该list的listIterator(迭代器),其中包含所有元素,并且是正确顺序
open fun listIterator(): MutableListIterator<E>
//返回该list的listIterator(迭代器),其中包含所有元素,并且是正确顺序,但直接从指定的位置开始遍历
open fun listIterator(index: Int): MutableListIterator<E>
  • subList
//返回一个集合视图,即从fromIndex~toIndex区间的元素视图,视图由该集合支持,所有对视图的操作会直接反映到该集合上,反之亦然
open fun subList(
    fromIndex: Int, 
    toIndex: Int
): MutableList<E>

最后

如果哪里写错了,请各位看官及时指出,欢迎留言

推荐阅读更多精彩内容

  • 简介 AbstractMutableList 是一个超级好用的抽象类,里面实现了好多对集合操作的直观方法,新鲜事物...
    坑吭吭阅读 1,180评论 2 2
  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    会飞的鱼69阅读 24,373评论 18 391
  • Collection ├List │├LinkedList │├ArrayList │└Vector │└Stac...
    AndyZX阅读 316评论 0 1
  • 落灰了是你的生命 孤独阿 使得我们时常惶恐 恨不能一眼在人群里辨识出你 那同样离群的 孤独的你 找的久了 错误不断...
    不知春阿阅读 25评论 0 0
  • 作业一:计算两个班的人数 作业二:取余运算 作业三:求差值 作业四:输出操作
    王昭策阅读 22评论 0 0