java.util.ArrayList
类定义
public class ArrayList<E> extends AbstractList<E> implements List<E>, RandomAccess, Cloneable, java.io.Serializable{}
参数
private static final long serialVersionUID = 8683452581122892189L; //默认初始容量 private static final int DEFAULT_CAPACITY = 10; //用于空实例的共享空数组实例 private static final Object[] EMPTY_ELEMENTDATA = {}; //ArrayList的元素存储在其中的数组缓冲区。 private transient Object[] elementData; //数组的大小 private int size;
构造方法
//用指定的初始容量构造一个空list public ArrayList(int initialCapacity) { } //构建一个初始容量为10的空list public ArrayList() { } //按照集合迭代器返回的顺序构造一个包含指定集合元素的列表 public ArrayList(Collection<? extends E> c) { }
主要方法
//将此ArrayList 实例的容量修剪为list的当前大小,应用程序可以使用这个操作来最小化一个 ArrayList实例的存储。 public void trimToSize() { } //指定期望的最小容量 public void ensureCapacity(int minCapacity) { } private static final int MAX_ARRAY_SIZE = Integer.MAX_VALUE - 8; //返回当前list中元素的个数 public int size() { return size; } //如果当前list有元素返回true public boolean isEmpty() { return size == 0; } //当前list是否包含指定元素 public boolean contains(Object o) { } //当前list中第一次出现指定元素的索引值,不存在的话索引值为-1 public int indexOf(Object o) { } //当前list中最后一次出现指定元素的索引值,不存在的话索引值为-1 public int lastIndexOf(Object o) { } //返回这个ArrayList实例的浅表副本。 (元素本身不被复制。) public Object clone() { } //返回一个包含list中所有元素的数组 public Object[] toArray() { } //通过索引值获取元素 public E get(int index) { } //通过索引值和元素内容设置元素 public E set(int index, E element) { } //添加元素 public boolean add(E e) { } //在索引值指定位置加入元素 public void add(int index, E element) { } //移除指定索引值位置的元素 public E remove(int index) { } //移除元素 public boolean remove(Object o) { } //清除所有元素 public void clear() { } //在指定位置添加指定集合中的所有元素 public boolean addAll(int index,Collection<? extends E> c) { } //移除指定范围内的元素 protected void removeRange(int fromIndex, int toIndex) { } //从指定位置list迭代 public ListIterator<E> listIterator(int index) { } //将所有元素生成list迭代 public ListIterator<E> listIterator() { } //将所有元素生成list迭代 public Iterator<E> iterator() { } public interface ListIterator<E> extends Iterator<E> { boolean hasNext(); boolean hasPrevious(); int nextIndex(); int previousIndex(); ... }
实例
public class ArrayListTest { public static void main(String[] args) { //初始化一个实例 List<String> list = new ArrayList<String>(); System.out.println("当前元素个数:"+list.size()); System.out.println("当前列表是否为空:"+list.isEmpty()); list.add("aaa"); list.add("ccc"); list.add(1, "bbb"); list.add("aaa"); list.add("ddd"); list.add("eee"); System.out.println("当前列表时候包含指定元素allocateStr:"+list.contains("allocateStr")); System.out.println("当前列表时候包含指定元素ccc:"+list.contains("ccc")); System.out.println("索引值为1的元素值为:"+list.get(1)); list.remove(4); list.remove("eee"); Iterator<String> it = list.iterator(); while(it.hasNext()){ System.out.print( " "+it.next()); } } }
结果