黑马程序员技术交流社区
标题:
关于ArrayList.class的构造方法的疑问
[打印本页]
作者:
hardeas
时间:
2016-2-6 22:58
标题:
关于ArrayList.class的构造方法的疑问
List<String> nList=new ArrayList<String>();请看上面的语句,它NEW了一个ArrayList的实例化对象。但是小弟在查看ArrayList的源代码的时候,发现了一个奇怪的问题。
10.jpg
(31.26 KB, 下载次数: 8)
下载附件
2016-2-6 22:54 上传
这里有提到无参构造方法的容量大小为10个,但是它没有写this(10)的语句。所以我又看了一下它的父类对象
11.png
(47.04 KB, 下载次数: 11)
下载附件
2016-2-6 22:56 上传
也没规定容量。
但是我在人家的教程中看到过ArrayList这个类的无参构造方法,不是这样写的。
这是什么原因?是java版本不同吗?望大神解答
作者:
ContainsM
时间:
2016-2-7 16:19
看 ArrayList 中的 add 方法
作者:
hardeas
时间:
2016-2-10 09:51
这和Add方法是不是无关呀。这里说的是构造方法会默认产生10个单位的容器啊。英文都有写,是不是Bug呀。
作者:
谁的苍茫
时间:
2016-2-13 08:14
private static final int DEFAULT_CAPACITY = 10; 他有个常亮是为10,当创建的时候就赋值为10
作者:
hardeas
时间:
2016-2-14 23:09
经过测试,实际new出来的ArrayList对象的初始容量为0.
直接在New语句下面跟一句
System.out.println(arrayList.size());就得到结果了
说明是官方在更改版本的时候,没有修改文档注释.
作者:
hardeas
时间:
2016-2-14 23:11
在add方法中,使用了ensureCapicity,这里才定义了10个大小的容量.
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2