数组与集合
数组:数组是一个定义后长度恒定,能够对同一数据类型数据进行存储的容器
集合:集合是长度可以动态变换的,能够存储不同数据类型的容器
集合API(集合体系概述)
collection接口
collection接口时Iterable的子接口,它定义了各种单列集合的共性,其它单列集合大多直接或间接继承自该接口;其中定义了存取一组对象的方法,其子接口Set和List分别定义了存储方式
List 存储的数据对象有序,可以重复
Set存储的数据对象无序,不可以重复
List接口
ArrayList实现类
LinkedList实现类
集合遍历
for循环遍历
for循环遍历集合主要通过对集合的索引进行遍历,需要获取集合的大小
其过程大致如下:
//for循环遍历
for(int i = 0;i < arrlist.size();i++){
if("a".equals(arrlist.get(i))){
arrlist.remove("a");
}
}
System.out.println(arrlist);
foreach循环遍历(增强for循环)
foreach循环主要用来遍历数组或集合中的元素,与迭代器相比写法上更加简便;与for循环相比,不需要获取集合的长度,也不需要根据索引访问集合中的元素
foreach循环的语法格式为:
//for(容器中的元素类型 临时变量:容器变量){
// 执行语句
//}
for (String x:arrlist){
System.out.println(x);
}
迭代器遍历(LinkedList实现类)
LinkedList实现类的对象叫做迭代器
LinkedList的内部采用指针的方式用来跟踪集合中的元素
其遍历过程大致如下:
Iterator<String> it = arrlist.iterator();
while (it.hasNext()) { //判断集合中是否存在下一个元素
String s = it.next();//指针指向集合中下一个元素,并将其赋值给String类型变量s
System.out.println(s);
}