0
点赞
收藏
分享

微信扫一扫

Java——类集框架:集合输出的详解及应用举例(Iterator迭代、ListIterator、Enumeration、foreach)


目录

​​1、Iterator迭代输出接口(核心)​​

​​2、ListIterator双向迭代输出(了解)​​

​​3、枚举输出:Enumeration​​

​​4、foreach输出​​

集合的四种输出方式:Iterator、ListIterator、Enumeration、foreach,其中Iterator使用的最多。

Java——类集框架:集合输出的详解及应用举例(Iterator迭代、ListIterator、Enumeration、foreach)_Iterator

1、Iterator迭代输出接口(核心)

Iterator是集合输出中最标准的操作接口,开发中首选的就是Iterator,若想取得Iterator示例化对象,观察Iterator接口的定义结构

Java——类集框架:集合输出的详解及应用举例(Iterator迭代、ListIterator、Enumeration、foreach)_Enumeration_02

【举例】:利用Iterator进行迭代输出

List<String> all =new ArrayList<String>();
all.add("hello");
all.add("world");
all.add("nice");
Iterator<String> iterator = all.iterator();
while (iterator.hasNext()){
String s = iterator.next();
System.out.println(s);
}

注意:迭代输出时不能使用集合中的remove()方法,而应使用Iterator的remove方法,否则可以测试下,报错。

2、ListIterator双向迭代输出(了解)

大部分情况下输出操作基本用Iterator,基本只输出一次,若要实现双向迭代,需要使用ListIterator,进行双向迭代操作时,必须先进行由前向后的迭代,再进行由后向前的迭代(因为指针++的设计),了解即可,基本不会用。

List<String> all =new ArrayList<String>();
all.add("hello");
all.add("world");
all.add("nice");
ListIterator<String> iterator = all.listIterator();
while (iterator.hasNext()){
String s = iterator.next();
System.out.println(s);
}

while (iterator.hasPrevious()){
String s = iterator.previous();
System.out.println(s);
}

Java——类集框架:集合输出的详解及应用举例(Iterator迭代、ListIterator、Enumeration、foreach)_Enumeration_03

3、枚举输出:Enumeration

JDK1.0开始提供,其结构定义如下:

Java——类集框架:集合输出的详解及应用举例(Iterator迭代、ListIterator、Enumeration、foreach)_集合输出_04

Enumeration最早是为Vector服务的,只有Vector提供了实例化Enumeration的方法,elements()。

Vector<String> all =new Vector<>();
all.add("hello");
all.add("world");
all.add("nice");
Enumeration<String> e = all.elements();
while (e.hasMoreElements()){
String s = e.nextElement();
System.out.println(s);
}

4、foreach输出

JDK1.5后提供的foreach输出形式除了可以支持数组输出外,也支持集合集合输出。该输出方法也叫做增强型for循环。

List<String> all =new ArrayList<>();
all.add("hello");
all.add("world");
all.add("nice");
for (String s:all){
System.out.println(s);
}

初学者不建议使用这种方式进行操作。

5、总结

1)集合输出首先想到Iterator接口接口;

2)如果在必须的情况下使用Enumeration接口;

 

作于202003061600,已归档

———————————————————————————————————

本文为博主原创文章,转载请注明出处!

若本文对您有帮助,轻抬您发财的小手,关注/评论/点赞/收藏,就是对我最大的支持!

祝君升职加薪,鹏程万里!

举报

相关推荐

0 条评论