ArrayList
实现了List接口,底层用数组实现,集合中允许元素为null,初始创建的时候默认创建长度为10的空间,如果装满后还需要再次添加数据,会再次创建一个新的数组,新的数组的长度为原本数组的1.5倍。再把数据放入新的数组。
在使用该集合的时候,增删操作会影响整个集合,效率偏低。
前面增加数据的时候,后面的数据均会后移,
前面删除数据的时候,后面的数据均会前移
其优势就是查询的效率很高。
常用操作:
//创建一个ArrayList的对象 在定义 时不需要指定长度
List list = new ArrayList();
//默认是添加到集合的末尾
boolean bool = list.add(1);
list.add("abcd");
//指定位置添加
list.add(0, 2);
//循环集合
// for(Object o : list) {
// System.out.println(o);
// }
//修改指定位置的值
list.set(1, "qwer");
//删除
list.remove(1);
for(int i = 0;i < list.size();i++) {
System.out.println("i="+i+"value="+list.get(i));
}
为了帮助大家帮助自己更好的理解ArrayList,我自己也封装了一个自己的ArrayList,虽然不如本来的强大严谨,但是用的都是比较基础的代码方便你们也方便我自己理解,博文地址如下:自封装ArrayList