Kotlin之“ArrayList”

简介

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

出身

open class ArrayList : AbstractMutableList,RandomAccess

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

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

构造方法(Constructors)

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

参数

  • 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): 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
  • 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
  • listIterator
//返回该list的listIterator(迭代器),其中包含所有元素,并且是正确顺序
open fun listIterator(): MutableListIterator
//返回该list的listIterator(迭代器),其中包含所有元素,并且是正确顺序,但直接从指定的位置开始遍历
open fun listIterator(index: Int): MutableListIterator
  • subList
//返回一个集合视图,即从fromIndex~toIndex区间的元素视图,视图由该集合支持,所有对视图的操作会直接反映到该集合上,反之亦然
open fun subList(
    fromIndex: Int, 
    toIndex: Int
): MutableList

最后

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

你可能感兴趣的:(Kotlin之“ArrayList”)