Collection接口下有List接口和Set接口
List中的元素是有序存储,可以有重复元素,4种遍历方式
(迭代器Iterator、列表迭代器ListIterator、普通for循环、增强for循环)
Set中的元素是无序存储,不可以有重复元素,2种遍历方式
(迭代器Iterator、增强for循环)
以下是List遍历方式,此处使用的是ArrayList,LinkedList同理
public class ListDemo {
public static void main(String[] args) {
List<String> list = new ArrayList<>(); //此处可替换为LinkedList
String[] strs = {"A","B","C","D"};
list.addAll(Arrays.asList(strs));
System.out.println("第一种:普通迭代器Iterator");
Iterator<String> itr = list.iterator();
while(itr.hasNext()){
System.out.print(itr.next()+" ");
}
System.out.println("\n第二种:迭代器ListIterator,从后往前遍历");
ListIterator listItr = list.listIterator(list.size());
while (listItr.hasPrevious()){
System.out.print(listItr.previous()+" ");
}
System.out.println("\n第三种:普通for循环,从后往前遍历");
for (int i = list.size()-1; i >= 0; i--) {
System.out.print(list.get(i)+" ");
}
System.out.println("\n第四种:增强for循环");
for (String i : list) {
System.out.print(i+" ");
}
}
}
以下是Set遍历方式,使用的HashSet
public class SetDemo {
public static void main(String[] args) {
Set<String> set = new HashSet<>();
set.add("A");
set.add("B");
set.add("C");
set.add("D");
System.out.println("第一种:迭代器Iterator");
Iterator<String> itr = set.iterator();
while (itr.hasNext()) {
System.out.print(itr.next()+" ");
}
System.out.println("\n第二种:增强for循环");
for (String i: set) {
System.out.print(i+" ");
}
}
}