List接口特有方法:
有序可重复,有序是指存储进去的元素都有下标
常用方法:
void add(int index, Object element)
Object get(int index)
int indexOf(Object o)
int lastIndexOf(Object o)
Object remove(int index)
Object set(int index, Object element)
ArrayList扩容机制:
Arraylist的创建支持有参和无参的两种创建,既重载了数组容量的构造方法,无参数创建ArrayList,底层数组容量默认为10,若超过了该容量,则自动扩容至原来容量的1.5倍。
有参数创建则可以自定义底层数组的容量。
ArrayList构造方法
第二个构造方法可以传一个集合进去:
使用样例:
package ListTest01;
import java.util.ArrayList;
import java.util.Collection;
import java.util.HashSet;
import java.util.List;
@SuppressWarnings({"all"})
public class TestDouble {
public static void main(String[] args) {
//使用无参构造方法,默认数组长度
List mylist = new ArrayList();
//有参构造,指定数组长度为100
List mylist1 = new ArrayList(100);
//构造一个哈希表
Collection Hashset = new HashSet();
//向哈希表中添加元素
Hashset.add(1);
Hashset.add(2);
Hashset.add(3);
Hashset.add(4);
//构造一个ArrayList类,将hashset作为参数传进去
List my = new ArrayList(Hashset);
for(int i = 0; i < my.size(); i ++ ){
Object obj = my.get(i);
System.out.println(obj);
}
}
}
上述操作,将HashSet传到ArrayList中后,HashSet就自动被转化成为List集合了,最后结果输出:
1
2
3
4