![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java源码
程序员侯小白
非科班初级程序员
展开
-
迭代器和增强for循环
由于准备毕业,好久没有学习Java的相关知识。今天写一个小代码时,突然对增强for循环中能不能删除元素产生了疑问,借此整理一下,可能理解的不够深刻,之后有新的发现再更新。今天写的代码如下:在ArrayList中插入四个元素,然后通过增强for循环遍历删除倒数第二个元素“three”。按道理讲,在增强for循环中不能删除元素,会报错。但是执行结果如下:从结果可以看出,程序顺利执行,并且成功地删除元素“three”。这是为什么呢?首先分析一下在增强for循环中为什么不能删除元素。增强for循环的本质原创 2020-12-31 10:57:20 · 756 阅读 · 2 评论 -
ArrayList的源码解析
ArrayList源码解析添加操作纠正之前的错误理解:认为ArrayList的底层是一个数组,默认的大小是10,所以可以直接通过add(int index,E element)方法在数组的任意位置添加元素解释:通过add(int index,E element)添加元素时,首先会判断index是否越界,源码如下:检查的方式是判断index是否大于size或者是否为负值,源码如下:其中size记录的是目前ArrayList中已经添加的元素个数而不是数组的长度(ArrayList的底层是一个数组原创 2020-12-28 21:20:14 · 65 阅读 · 0 评论