ArrayList类

ArrayList类:它是List接口下的实现类。它的底层使用的可变数组作为容器,我们使用它作为集合添加数据时,其实是将数据添加到他内部维护的可变数组中去了。当空间不够时,它会以原长度的0.5倍来增长。既然它的底层是数组,那么它也可以通过下标来控制数据。

它实现了collection,List中的所有方法。

他可以保证存储有序,它的增加和删除方法很慢,查询速度较快。它的底层线程不同步,所以有一些安全问题。
练习:
需求:将一个集合中重复的元素去除。
思路:创建另一个新的集合,拿出一个元素判断该集合内有没有,没有就放进去。最后将原集合清空,放入新集合里的元素。
代码实现:

import java.util.ArrayList;
import java.util.Iterator;
public class ArrayListDemo {
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        ArrayList al = new ArrayList();
        al.add("aaa");
        al.add("bbbbb");
        al.add("AAAA");
        al.add("aaa");
        al.add("CCC");
        al.add("AAAA");
        System.out.println(al);
        ArrayList newal = new ArrayList();
        for (Iterator i = al.iterator(); i.hasNext();) {// 遍历数组
            // 判断如果newal集合内没有al集合内的元素,就将该元素添加到新集合内。
            if (!newal.contains(i.next())) {
                newal.add(i.next());
            }
        }
        al.clear();
        al.addAll(newal);
        System.out.println(newal);
    }
}

你可能感兴趣的:(ArrayList类)