java中的ArrayList的构造方法有哪些?

互联网 19-11-25

下面由java零基础入门栏目为大家介绍ArrayList的构造方法有哪些,希望对大家的学习有所帮助!

一、ArrayList(int initialCapacity)

所以当我们要使用ArrayList时,可以 new ArrayList(大小)构造方法来指定集合的大小,以减少扩容的次数,提高写入效率,该构造函数的源码如下:

// 自定义初始容量的构造方法 public ArrayList(int initialCapacity) {      if (initialCapacity > 0) {         this.elementData = new Object[initialCapacity];     } else if (initialCapacity == 0) {         this.elementData = EMPTY_ELEMENTDATA;     } else {         // 如果初始容量小于0,则会出现 IllegalArgumentException 异常         throw new IllegalArgumentException("Illegal Capacity: "+                                            initialCapacity);     } }

这个构造函数还是比较好理解的,因为涉及到的代码也不多,而且都是一些基础的代码,相信聪明的你肯定看得懂的

二、ArrayList()

这个就更简单了,只有两行代码

// 默认的构造方法,构造一个初始容量为10的空列表 public ArrayList() {     // elementData 初始化为 DEFAULTCAPACITY_EMPTY_ELEMENTDATA     this.elementData = DEFAULTCAPACITY_EMPTY_ELEMENTDATA; }

三、ArrayList(Collection<? extends E> c)

// 构造一个包含指定元素的列表集合,按集合的返回顺序迭代器 // 传入参数为Collection对象 // c要将其元素放入此列表的集合 public ArrayList(Collection<? extends E> c) {          // 调用toArray()方法将Collection对象转换为Object[]     elementData = c.toArray();          // 判断size的大小,如果size值为0,则会抛出NullPointerException异常     // 如果size > 0 ,则执行以下代码     if ((size = elementData.length) != 0) {         // c.toArray might (incorrectly) not return Object[] (see 6260652)         if (elementData.getClass() != Object[].class)                          // 执行Arrays.copyOf,把Collection对象的内容copy到elementData中             elementData = Arrays.copyOf(elementData, size, Object[].class);     } else {         // replace with empty array.         this.elementData = EMPTY_ELEMENTDATA;     } }

以上就是java中的ArrayList的构造方法有哪些?的详细内容,更多内容请关注技术你好其它相关文章!

来源链接:
免责声明:
1.资讯内容不构成投资建议,投资者应独立决策并自行承担风险
2.本文版权归属原作所有,仅代表作者本人观点,不代表本站的观点或立场
标签: 构造方法
上一篇:php获取远程图片并下载保存到本地的方法分析 下一篇:vue.js如何给对象属性赋值呢

相关资讯