欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

2:ArrayList

程序员文章站 2022-03-07 22:48:31
...

1、什么是ArrayList

ArrayList就是传说中的动态数组,用MSDN中的说法,就是Array的复杂版本,它提供了如下一些好处:

(1) 动态的增加和减少元素

(2) 实现了ICollection和IList接口

(3) 灵活的设置数组的大小

大家知道,数组是静态的,数组被初始化之后,数组长度就不能再改变了。ArrayList是可以动态改变大小的。那么,什么时候使用Array(数组),什么时候使用ArrayList?答案是:当我们不知道到底有多少个数据元素的时候,就可使用ArrayList;如果知道数据集合有多少个元素,就用数组。

 

2 ArrayList类支持3个构造方法。

1Arraylist() 这个构造方法构造了一个空的链表。

2ArrayList(Collection<? extends E> c) 这个构造方法构造了一个包含指定元素集合的链表,注意,这里的字符E是一个标记,用来表示集合中元素的类型。至于具体是什么类型,需要你在使用这个构造方法的时候来指定。

3ArrayList(int initialCapacity) 这是第三个构造方法,构造了一个指定大小但内容为空的链表。initialCapacity参数就是初始容量大小。

举例来说,如果你要创建一个空的数组链表,用来存放String类型的对象,那么你可以像下面这样做:

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

如果你需要创建一个指定初始容量的数组链表,你可以像下面这样做:

ArrayList<Integer> list = new ArrayList<Integer>(7);

注意:ArrayList类只支持对象类型,不支持基础数据类型。就是说ArrayList对象只能存放对象,不能存放基础数据类型的数据。

3初始化ArrayList的两种方法

package comm;

import java.util.ArrayList;

/*初始化ArrayList的两种方法*/
//注意:ArrayList类只支持对象类型,不支持 基础数据类型。
//就是说ArrayList对象只能存放对象,不能存放基础数据类型的数据。
public class ArrayList_1 {
public static void main(String[] args) {
//方式一:	
	ArrayList<String> list = new ArrayList<String>();
	String str01 = String("Str01");
	String str02 = String("Str02");
	list.add(str01);
	list.add(str02);
//方式二:
	ArrayList<String> list = new ArrayList<String>() {
		{add("str01");add("str02");}
	}
}
}

 

参考链接:

ArrayList用法详解

https://www.cnblogs.com/ShallByeBye/p/8419027.html

Java集合 ArrayList原理及使用

https://www.cnblogs.com/LiaHon/p/11089988.html