ArrayList介绍
ArrayList是java.util中的一个类,是List 接口的实现,并且是长度大小可变的数组,实现了所有可选列表操作,并允许包括 null 在内的所有元素。
ArrayList常用的方法
Array常用的方法 | 方法 |
---|---|
add (“xxx”) | 在list的末尾添加一个元素xxx |
add(1, “xxx”) | 在list的指定位置添加一个元素xxx |
get(index: int) | 返回指定index处的元素 |
isEmpty(): boolean | 如果list为空,返回true |
remove(index: int): boolean | 删除指定index处的元素,如果元素被删除,返回true |
size(): int | 返回list的长度 |
数组Array和ArrayList的对比
基本操作 | Array | ArrayList |
---|---|---|
创建 | int [] arr = new int[10]; | List list = new ArrayList(); |
访问一个元素 | arr[index] | list.get(index) |
更新 | arr[index] = 8 | list.set(index, “beijing”) |
查询大小 | arr.length | list.size() |
两种实例化方式**,建议使用第2种**,第一种形式用当前类作为引用类型,那么可以访问到ArrayList这个类中的所有公用方法。第二种形式,用ArrayList实现的接口List作为引用类型,那么通过list引用可以访问到接口中定义的方法。也就是说ArrayList这个类实现了List接口,除了要必须实现接口List中声明的方法外,还可以实现额外的一些方法。
设计模式中有:“代码尽量依赖于抽象,不依赖于具体”。第一种形式就是依赖具体,第二种形式就是依赖于抽象。因为List是接口。代码依赖于抽象的好处是,代码可以方便替换。
ArrayList<String> list1 = new ArrayList();// 1
List<String> list = new ArrayList(); // 2
附上代码部分
List<String> list = new ArrayList();
list.add("xiao"); // 添加
list.add("da");
list.add("list");
ArrayList<String> list1 = new ArrayList();
list1.addAll(list); // 添加一个新的list
for (String lists : list1){ // 遍历输出
System.out.println(lists);
}
续 list的实现类