15个必须掌握的ArrayList实用示例

一、ArrayList的初始化操作

使用ArrayList,可以通过以下3种方式进行初始化:

  1. 通过默认构造函数进行初始化,此时ArrayList的初始容量为10:
  2.   ArrayList<String> list1 = new ArrayList<>();
      
  3. 通过给定初始容量进行初始化:
  4.   ArrayList<String> list2 = new ArrayList<>(20);
      
  5. 通过另一个Collection进行初始化:
  6.   List<String> list3 = new ArrayList<>();
      list3.add("apple");
      list3.add("orange");
      ArrayList<String> list4 = new ArrayList<>(list3);
      

二、ArrayList的添加操作

ArrayList的添加操作非常灵活,可以根据需求进行添加,常用的有以下2种方式:

  1. 使用add()方法,将元素添加到列表的末尾:
  2.   ArrayList<String> list5 = new ArrayList<>();
      list5.add("apple");
      list5.add("orange");
      list5.add("banana");
      
  3. 使用add(index,element)方法,将元素插入到指定位置:
  4.   ArrayList<String> list6 = new ArrayList<>();
      list6.add("apple");
      list6.add("orange");
      list6.add(1,"banana");
      

三、ArrayList的删除操作

ArrayList提供了多种删除元素的方法,常用的有以下两种:

  1. 使用remove(int index)方法,删除指定位置的元素:
  2.   ArrayList<String> list7 = new ArrayList<>();
      list7.add("apple");
      list7.add("orange");
      list7.add("banana");
      list7.remove(1);
      
  3. 使用remove(Object o)方法,删除指定元素:
  4.   ArrayList<String> list8 = new ArrayList<>();
      list8.add("apple");
      list8.add("orange");
      list8.add("banana");
      list8.remove("orange");
      

四、ArrayList的修改操作

ArrayList提供了set(int index,E element)方法,可以将指定位置的元素替换为新元素:

ArrayList<String> list9 = new ArrayList<>();
list9.add("apple");
list9.add("orange");
list9.set(1,"banana");

五、ArrayList的查找操作

ArrayList提供了多种查找元素的方法,常用的有以下两种:

  1. 使用get(int index)方法,获取指定位置的元素:
  2.   ArrayList<String> list10 = new ArrayList<>();
      list10.add("apple");
      list10.add("orange");
      String result1 = list10.get(1);
      
  3. 使用indexOf(Object o)方法,获取指定元素第一次出现的位置:
  4.   ArrayList<String> list11 = new ArrayList<>();
      list11.add("apple");
      list11.add("orange");
      int result2 = list11.indexOf("orange");
      

六、ArrayList的遍历操作

ArrayList提供了多种遍历列表元素的方法,常用的有以下3种方式:

  1. 使用for循环进行遍历:
  2.   ArrayList<String> list12 = new ArrayList<>();
      list12.add("apple");
      list12.add("orange");
      for(int i=0;i<list12.size();i++){
        String element = list12.get(i);
        System.out.println(element);
      }
      
  3. 使用forEach循环进行遍历:
  4.   ArrayList<String> list13 = new ArrayList<>();
      list13.add("apple");
      list13.add("orange");
      for(String element:list13){
        System.out.println(element);
      }
      
  5. 使用迭代器进行遍历:
  6.   ArrayList<String> list14 = new ArrayList<>();
      list14.add("apple");
      list14.add("orange");
      Iterator<String> iterator = list14.iterator();
      while(iterator.hasNext()){
        String element = iterator.next();
        System.out.println(element);
      }
      

七、ArrayList的排序操作

使用Collection.sort(List list)方法,可以对ArrayList进行排序:

ArrayList<Integer> list15 = new ArrayList<>();
list15.add(3);
list15.add(1);
list15.add(5);
list15.add(2);
Collections.sort(list15);

八、ArrayList的清空操作

使用clear()方法,可以清空ArrayList:

ArrayList<String> list16 = new ArrayList<>();
list16.add("apple");
list16.add("orange");
list16.clear();

九、ArrayList的判断操作

使用isEmpty()方法,可以判断ArrayList是否为空:

ArrayList<String> list17 = new ArrayList<>();
boolean result3 = list17.isEmpty();

十、ArrayList的扩容操作

ArrayList使用动态数组实现,当元素数量超出容量时,会自动进行扩容。可以使用ensureCapacity(int minCapacity)方法手动指定容量。

ArrayList<String> list18 = new ArrayList<>();
list18.ensureCapacity(30);

十一、ArrayList的截取操作

使用subList(int fromIndex,int toIndex)方法,可以截取子列表:

ArrayList<String> list19 = new ArrayList<>();
list19.add("apple");
list19.add("orange");
list19.add("banana");
List<String> subList = list19.subList(1,3);

十二、ArrayList的反转操作

使用Collections.reverse(List list)方法,可以对ArrayList进行反转:

ArrayList<Integer> list20 = new ArrayList<>();
list20.add(1);
list20.add(2);
list20.add(3);
Collections.reverse(list20);

十三、ArrayList的复制操作

使用Collections.copy(List dest,List src)方法,可以将一个ArrayList复制到另一个ArrayList中:

ArrayList<String> srcList = new ArrayList<>();
srcList.add("apple");
srcList.add("orange");
ArrayList<String> destList = new ArrayList<>();
destList.add("banana");
destList.add("pear");
Collections.copy(destList,srcList);

十四、ArrayList的转数组操作

使用toArray()方法,将ArrayList转化为数组:

ArrayList<String> list21 = new ArrayList<>();
list21.add("apple");
list21.add("orange");
Object[] array = list21.toArray();

十五、ArrayList的序列化操作

使用ObjectOutputStream将ArrayList进行序列化操作,代码如下:

ArrayList<String> list22 = new ArrayList<>();
list22.add("apple");
list22.add("orange");
FileOutputStream fos = new FileOutputStream("listSerial.txt");
ObjectOutputStream oos = new ObjectOutputStream(fos);
oos.writeObject(list22);
oos.flush();
oos.close();

原创文章,作者:小蓝,如若转载,请注明出处:https://www.506064.com/n/204222.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
小蓝的头像小蓝
上一篇 2024-12-07 12:16
下一篇 2024-12-07 12:16

相关推荐

发表回复

登录后才能评论