前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Kotlin之“ArrayList”

Kotlin之“ArrayList”

作者头像
坑吭吭
发布2018-08-31 17:33:50
2.1K0
发布2018-08-31 17:33:50
举报

简介

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

出身

代码语言:javascript
复制
open class ArrayList<E> : AbstractMutableList<E>,RandomAccess

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

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

构造方法(Constructors)

  • 创建一个空的ArrayList
代码语言:javascript
复制
ArrayList(capacity: Int = 0) 
  • 创建一个被元素集合填充的ArrayList
代码语言:javascript
复制
ArrayList(elements: Collection<E>)

参数

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

原始方法

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

继承来的方法

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

最后

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

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2017.06.05 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 简介
  • 出身
  • 构造方法(Constructors)
  • 参数
  • 原始方法
  • 继承来的方法
  • 最后
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档