(1)ArrayList类是一个动态修改的数组,与普通数组相比没有固定大小的限制,我们可以随意添加,删除元素。
ArrayList类位于java.util包中,首先引用
import java.util.ArrayList; // 引入 ArrayList 类
ArrayList<E> objectName =new ArrayList<>(); // 初始化
E泛指数据类型,用于设置objectName的数据类型,只能为引用数据类型。
objectName对象名
简单的添加元素
访问元素
访问ArrayList中的元素可以使用get()方法:
修改元素
如果修改ArrayList中的元素可以使用set()方法:
删除元素
如果删除ArrayList中的元素可以使用remov()方法:
计算大小
如果计算集合ArrayList中的元素数量可以使用size()方法:
迭代数组列表
还可以使用for来迭代数组列表中的元素:
其他你可能已经忘记的引用类型:
在集合ArrayList中元素实际为对象,上边写的都是字符串String类型的包装类,如果储存其他类型的元素,<E>只能作为引用数据类型,这时候可以记忆一下基本数据类型的包装类。
问:?则使用ArrayList存储数字(规定使用integer类型):
最后附上上边的ArrayList集合类实现的不重复点名程序代码:
import java.util.*;
public class test1 {
public static void main(String[]args){
// 使用Arrays把数据换成集合
List<String> list = Arrays.asList("小明","小红","小华","小丁","小原");
// 构造方法创建名单集合
ArrayList<String> names = new ArrayList<>(list);
Scanner sc = new Scanner(System.in);
Random r= new Random();
while (true){
System.out.println("点名输入Y/y");
String input = sc.next();
if(names.size() == 0){
System.out.println("点名结束,请重新开始输入");
break;
}
if (input.equals("y")||input.equals("y")){
int index = r.nextInt(names.size());
String name = names.get(index);
System.out.println(name+"___天选之子");
names.remove(index);
}else {
System.out.println("抽查结束,下次再见");
break;
}
}
}
}