ArrayListQ15
根据指定的结构 和 方法要求 实现 ArrayList
假设 ArrayList 里存储的元素 是 Int
结构
source: Int
指向基础数组的指针
我们可以设定 ArrayList 刚开始的时候,source
是一个指向 尺寸 为 4 的基础数组。
随着 对元素的增加,你自己需要 进行扩容操作。
size: Int
多少个数组内的空间,真正被占用
API
add(value: Int)
往集合的最后一个位置 增加一个元素 value
insert(index: Int, value: Int)
往集合的 index
位置插入元素 value
样例
list is <6, 7, 3, 8, 4> list.insert(2, 9); list is <6, 7, 9, 3, 8, 4> list.insert(6, 1); list is <6, 7, 9, 3, 8, 4, 6>
合法性检查
需要检测 index
的合法性。
index
应该 大于等于 0,且小于等于 当前元素个数
如果 index
非法,则不做任何操作
get(index: Int): Int
返回集合中 index
的位置
size(): Int
返回 ArrayList 里有多少个元素
toString(): String
返回字符串
格式
如果数组内有一些元素,返回
"<6, 7, 3, 8, 4>"
如果数组内没有元素,返回
"<>"