Java列表和队列用法与原理剖析(1.ArrayLIst)

本文是阅读《Java编程的逻辑》进行的学习笔记总结,如有错误望各位指正

ArrayList

用法

ArrayList是一个动态数组泛型容器,新建ArrayList需要实例化泛型参数,如:

ArrayList<String> al = new ArrayList<String>();

同时写有增删改查的各种方法,在这里就不一一解释了

原理

ArrayList内部有一个数组elementData和一个整数size,ArrayList的各种public方法内部操作都是基于这个数组和这个整数,elementData会随着实际元素个数的增多而重新分配,而size始终记录实际元素的个数,要注意的是,类似于add,remove这些方法都会用modCount来记录内部的修改次数,要记录修改次数的原因,下面的[迭代的陷阱中]解释

迭代

ArrayList实现了Iterable接口,所以支持foreach语法。
Iterable接口里面实现了iterator()方法,iterator()方法返回的是一个Iterator对象,实际就是使用Iterator接口的方法进行遍历。也就是说

    • 3
      点赞
    • 1
      收藏
      觉得还不错? 一键收藏
    • 4
      评论

    “相关推荐”对你有帮助么?

    • 非常没帮助
    • 没帮助
    • 一般
    • 有帮助
    • 非常有帮助
    提交
    评论 4
    添加红包

    请填写红包祝福语或标题

    红包个数最小为10个

    红包金额最低5元

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

    抵扣说明:

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

    余额充值