大话ArrayList

  1. 常用方法
    remove(index i);// 删除第i个元素
    ps:删除第i个元素,第i+1个元素会向前移动,变成第i个元素,如果还有第i+1个元素。
    remove(Object obj);// 删除集合中第一次出现的元素
    比较两个元素是否一致调用Object 的equals方法,一致则删除返回true,找不到一致的元素返回false;
    add(Object obj);//向集合中添加元素
    List集合是有序集合,所以可以存放多个相同元素。
  2. 自动扩容机制
    ArrayList默认分配10个长度的容量,1.7之前动态扩容1.5倍+1,1.7之后动态扩容1.5倍。
    在自动扩容之后,集合中还有很多空余空间,可以调用trimToSize()方法去掉空余空间,节省内存。
    在集合初始化的时候如果不知道要添加元素的个数,可以通过ensureCapacity(int size);

  3. 注意事项
    在使用迭代器遍历ArrayList的过程中 ,绝对不允许对集合整体进行任何添加删除操作。可以使用迭代器的remove()方法,删除当前所指向的元素。
    5.0之前 必须使用迭代器的remove方法删除
    5.0之后 可以使用CopOnWriteArrayList
    练习题:

1.
 List<Integer>`list = new ArrayList<>();
 Integer int1 = new Integer(1);
 Integer int2 = new Integer(2);
 list.add(int1);
 System.out.println(list.size());
 list.remove(int2);
 System.out.println(list.size());
2
 List<String>`list = new ArrayList<>();
 String str1 = new String("tom");
 String str2 = new String("tom");
 list.add(str1);
 System.out.println(list.size());
 list.remove(str2);
 System.out.println(list.size());
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值