集合输出有四种方法:Iterator、ListIterator、Enumeration、foreach
1.
Iterator——迭代输出
只要是Collection接口的子类对象,就一定有个
Iterator(),取得Iterator对象用于集合类的输出
(1)hasNext():判断是否有下一个元素
(2) next():取得当前元素
(3)remove():删除元素
注:在进行集合输出的时候不要修改集合中元素
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
public class Test1
{
public static void main(String[] args) {
List<String> list = new ArrayList<>();
list.add("Hello");
list.add("HaHa");
list.add("HeHe");
Iterator<String> iterator = list.iterator();
while (iterator.hasNext()) {//判断是否有下一个元素
String string = iterator.next();//取得当前元素
//取得全部元素
System.out.println(string);
if(string.equals("HeHe"))
{
iterator.remove();
continue;
}
//删除HeHe之后的元素
System.out.println(string);
}
}
}
2.
ListIterator——双向迭代接口
Iterator输出特点:只能够由前向后进行内容的迭代处理,而如果要想进行双向迭代,那么就必须依靠Iterator的子接口:ListIterator来实现。
(1)hasPrevious():判断是否有上一个元素
(2)previous():取得上一个元素
(3)listIterator():取得ListIterator接口对象
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
public class Test1
{
public static void main(String[] args) {
List<String> list = new ArrayList<>();
list.add("Hello");
list.add("HaHa");
list.add("HeHe");
ListIterator<String> listIterator = list.listIterator();
System.out.println("从后往前输出");
while (listIterator.hasNext()) {//判断是否有下一个元素
System.out.println(listIterator.next()+"、");//取得下一个元素
}
System.out.println("\r\n从后往前输出");
while (listIterator.hasPrevious()) {//判断是否有上一个元素
System.out.println(listIterator.previous()+"、");//取得上一个元素
}
}
}
3.
Enumeration——枚举输出
取得这个接口的实例化对象,是不能依靠Collection、List、Set等接口的。只能够依靠Vector子类,因为Enumeration最早的设计就是为Vector服务的
(1)hasMoreElements():判断是否有下一个元素
(2)nextElement():取得下一个元素
(3)elements():取得Enumeration的接口对象
import java.util.ArrayList;
import java.util.Enumeration;
import java.util.List;
import java.util.Vector;
public class Test1
{
public static void main(String[] args) {
Vector<String> vector = new Vector<>();
vector.add("Hello");
vector.add("HaHa");
vector.add("HeHe");
Enumeration<String> enumeration = vector.elements();
while(enumeration.hasMoreElements())
{
System.out.println(enumeration.nextElement());
}
}
}
4.
foreach输出
从JDK1.5开始foreach可以输出数组、集合
import java.util.ArrayList;
import java.util.List;
public class Test1
{
public static void main(String[] args) {
List<String> list = new ArrayList<>();
list.add("Hello");
list.add("HaHa");
list.add("HeHe");
for(String string : list)
{
System.out.println(string);
}
}
}