1
0
mirror of https://github.com/Snailclimb/JavaGuide synced 2025-06-20 22:17:09 +08:00

Update ArrayList.md

1.格式调整 2. fix RandomAccess接口
This commit is contained in:
幻境云图 2019-03-01 16:43:20 +08:00 committed by GitHub
parent db1c987a47
commit b65a3d0df0
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -21,7 +21,7 @@
  ArrayList 继承了AbstractList实现了List。它是一个数组队列提供了相关的添加、删除、修改、遍历等功能。   ArrayList 继承了AbstractList实现了List。它是一个数组队列提供了相关的添加、删除、修改、遍历等功能。
  ArrayList 实现了**RandomAccess 接口**即提供了随机访问功能。RandomAccess 是 Java 中用来被 List 实现,为 List 提供**快速访问功能**的。在 ArrayList 中,我们即可以通过元素的序号快速获取元素对象,这就是快速随机访问。   ArrayList 实现了**RandomAccess 接口** RandomAccess 是一个标志接口,表明实现这个这个接口的 List 集合是支持**快速随机访问**的。在 ArrayList 中,我们即可以通过元素的序号快速获取元素对象,这就是快速随机访问。
  ArrayList 实现了**Cloneable 接口**,即覆盖了函数 clone()**能被克隆**。   ArrayList 实现了**Cloneable 接口**,即覆盖了函数 clone()**能被克隆**。
@ -660,7 +660,7 @@ public class ArrayList<E> extends AbstractList<E>
(3)private class SubList extends AbstractList<E> implements RandomAccess (3)private class SubList extends AbstractList<E> implements RandomAccess
(4)static final class ArrayListSpliterator<E> implements Spliterator<E> (4)static final class ArrayListSpliterator<E> implements Spliterator<E>
``` ```
  ArrayList有四个内部类其中的**Itr是实现了Iterator接口**,同时重写了里面的**hasNext()****next()****remove()**等方法;其中的**ListItr**继承**Itr**,实现了**ListIterator接口**,同时重写了**hasPrevious()****nextIndex()****previousIndex()****previous()****set(E e)****add(E e)**等方法,所以这也可以看出了**Iterator和ListIterator的区别:**ListIterator在Iterator的基础上增加了添加对象修改对象逆向遍历等方法这些是Iterator不能实现的。   ArrayList有四个内部类其中的**Itr是实现了Iterator接口**,同时重写了里面的**hasNext()****next()****remove()**等方法;其中的**ListItr**继承**Itr**,实现了**ListIterator接口**,同时重写了**hasPrevious()****nextIndex()****previousIndex()****previous()****set(E e)****add(E e)**等方法,所以这也可以看出了 **Iterator和ListIterator的区别:**ListIterator在Iterator的基础上增加了添加对象修改对象逆向遍历等方法这些是Iterator不能实现的。
### <font face="楷体" id="6"> ArrayList经典Demo</font> ### <font face="楷体" id="6"> ArrayList经典Demo</font>
```java ```java