Java基础——使用Iterator遍历集合
在Iterator类中有三个方法:
Object next():返回迭代器刚越过的元素的引用,返回值是Object,需要强制转换成自己需要的类型
boolean hasNext():判断容器内是否还有可供访问的元素
void remove():删除迭代器刚越过的元素
iterator用法主要是对对象进行迭代,然后循环出对象属性,下面我们看看如何使用吧:
public static void main(String[] args) {
ArrayList arr = new ArrayList();
arr.add("AA");
arr.add("BB");
arr.add("CC");
arr.add("DD");
arr.add("EE");
//使用方法iterator()要求容器返回一个Iterator
Iterator i = arr.iterator();
//使用hasNext()检查序列中是否还有元素。
while (i.hasNext()){
//使用next()获得序列中的下一个元素。
String str = (String) i.next();
System.out.println(str);
}
}
另外在JDK1.8中还引入了一个新的默认方法: forEachRemaining() 方法,作用和forEach 一样。
public static void main(String[] args) {
ArrayList arr = new ArrayList();
arr.add("AA");
arr.add("BB");
arr.add("CC");
arr.add("DD");
arr.add("EE");
//使用方法iterator()要求容器返回一个Iterator
Iterator i = arr.iterator();
i.forEachRemaining(new Consumer() {
@Override
public void accept(Object o) {
System.out.println((String)o);
}
});
System.out.println("==========================");
//以上写法可以使用lambda表达式简化代码
// i.forEachRemaining(String -> System.out.println(String));
System.out.println("==========================");
//使用forEach方法遍历集合
arr.forEach(String -> System.out.println(String));
}
以上方法否可以遍历集合。