当前位置:  首页>> 技术小册>> Java语言基础10-Java中的集合

  • 在程序开发中,经常需要遍历集合中的所有元素。针对这种需求,JDK 专门提供了一个接口 java.util.Iterator 。
  • Iterator 接口也是 Java 集合中的一员,但是它和 Collection 、Map 接口有所不同,Collection 接口和 Map 接口主要用来存储元素,而 Iterator 接口主要用于迭代访问(即遍历)Collection 中的元素,因此 Iterator 对象也称为迭代器。
  • 获取迭代器的方法(Collection 接口中提供的方法):
  1. Iterator<E> iterator();
  • Iterator 接口中的常用方法:
    • ① 判断是否有元素可以迭代,如果有,返回 true ;否则,返回 false :
  1. boolean hasNext();

② 返回迭代的下一个元素:

  1. E next();

注意:在使用迭代器进行遍历集合的时候,如果集合中已经没有元素了,还使用迭代器的 next 方法,将会抛出 java.util.NoSuchElementException 异常。

  • 示例:
  1. package com.github.collection1.demo1;
  2. import java.util.ArrayList;
  3. import java.util.Collection;
  4. import java.util.Iterator;
  5. /**
  6. * @author maxiaoke.com
  7. * @version 1.0
  8. *
  9. */
  10. public class Test {
  11. public static void main(String[] args) {
  12. Collection<String> collection = new ArrayList<>();
  13. collection.add("aa");
  14. collection.add("bb");
  15. collection.add("cc");
  16. collection.add("dd");
  17. // 获取迭代器
  18. Iterator<String> iterator = collection.iterator();
  19. // 判断集合中是否有元素
  20. while (iterator.hasNext()) {
  21. // 取出集合中的元素
  22. String next = iterator.next();
  23. System.out.println(next);
  24. }
  25. }
  26. }

示例:

  1. package com.github.collection1.demo2;
  2. import java.util.ArrayList;
  3. import java.util.Collection;
  4. import java.util.Iterator;
  5. /**
  6. * @author maxiaoke.com
  7. * @version 1.0
  8. *
  9. */
  10. public class Test {
  11. public static void main(String[] args) {
  12. Collection<String> collection = new ArrayList<>();
  13. collection.add("aa");
  14. collection.add("bb");
  15. collection.add("cc");
  16. collection.add("dd");
  17. for (Iterator<String> iterator = collection.iterator(); iterator.hasNext();) {
  18. String next = iterator.next();
  19. System.out.println(next);
  20. }
  21. }
  22. }

该分类下的相关小册推荐: