Java |
您所在的位置:网站首页 › arraylist如何删除元素 › Java |
文章目录
一、简介二、使用1、构造1.1 无参构造1.2 指定初始容量1.3 利用其他的collection进行构造
2、基础操作2.1 添加元素2.2 删除元素2.3 修改元素2.4 访问元素2.5 计算大小2.6 遍历数组
3、常用操作4、扩容机制
三、模拟实现ArrayList
一、简介
ArrayList 类是一个可以动态修改的数组,与普通数组的区别就是它是没有固定大小的限制,我们可以添加或删除元素。 ArrayList 继承了 AbstractList ,并实现了 List 接口。 注: ArrayList实现了RandomAccess接口,表明ArrayList支持随机访问。ArrayList实现了Cloneable接口,表明ArrayList是可以clone的。ArrayList实现了Serializable接口,表明ArrayList是支持序列化的。和Vector不同,ArrayList不是线程安全的,在单线程下可以使用,在多线程中可以选择Vector或者CopyOnWriteArrayList。ArrayList底层是一段连续的空间,并且可以动态扩容,是一个动态类型的顺序表。 二、使用 1、构造ArrayList有三种构造方式:无参构造、利用其他的collection构造、指定顺序表的初始容量。 1.1 无参构造无参构造类型是推荐的写法。 //Integer为整型的包装类型 List list = new ArrayList(); 1.2 指定初始容量 List list = new ArrayList(10); list.add(1); list.add(2); list.add(3); 1.3 利用其他的collection进行构造 //构建一个与list1元素一样的list ArrayList list2 = new ArrayList(list1);注: 无论哪种构造形式,都应该避免省略类型,任意类型的元素都能够存放,使用时会带来很多麻烦。 2、基础操作 2.1 添加元素添加元素到 ArrayList 可以使用 add() 方法: public class Test{ public static void main(String[] args) { ArrayList array = new ArrayList(); sites.add("Hello"); sites.add("CSDN"); System.out.println(array); } }删除元素使用remove()方法: public class Test { public static void main(String[] args) { ArrayList array = new ArrayList(); array.add("Hello"); array.add("CSDN"); array.add("IDEA"); array.add("Java"); System.out.println(array); array.remove(2); System.out.println(array); } }修改元素可以使用 set() 方法: public class Test { public static void main(String[] args) { ArrayList array = new ArrayList(); array.add("Hello"); array.add("CSDN"); array.add("IDEA"); array.add("Java"); System.out.println(array); array.set(2,"python"); // 第一个参数为索引,第二个参数为要修改的值 System.out.println(array); } }访问元素使用get()方法: public class Test { public static void main(String[] args) { ArrayList array = new ArrayList(); array.add("Hello"); array.add("CSDN"); array.add("IDEA"); array.add("Java"); System.out.println(array); System.out.println(array.get(2)); // 获取位置2的元素 } }计算数组内元素个数使用size()方法: public class Test { public static void main(String[] args) { ArrayList array = new ArrayList(); array.add("Hello"); array.add("CSDN"); array.add("IDEA"); array.add("Java"); System.out.println(array); System.out.println(array.size()); } }遍历数组有三种方式:for循环遍历、for-each遍历、迭代器遍历。 public class Test { public static void main(String[] args) { ArrayList array = new ArrayList(); array.add("Hello"); array.add("CSDN"); array.add("IDEA"); array.add("Java"); System.out.println(array); System.out.println("for:"); for (int i = 0; i System.out.print(j+" "); } System.out.println(); System.out.println("迭代器:"); Iterator it = array.listIterator(); while(it.hasNext()){ System.out.print(it.next() + " "); } System.out.println(); } |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |