Java Iterator(迭代器)

Java Iterator(迭代器)

如果需要使用iterator类需要从java.util包中引入它

Java Iterator不是一个集合,它是一种访问集合的方法,用于迭代ArrayList和HashSet等集合

迭代器it 的两个基本操作是next,hasNext和remove

调用it.next()会返回迭代器的下一个元素,并更新迭代器的状态

调用it.hasNext()用于检测集合中是否还有元素

调用it.remove()将迭代器返回的元素删除

 

集合获取一个迭代器用iterator()方法

package m;

//引入 ArrayList 和 Iterator 类
import java.util.ArrayList;
import java.util.Iterator;

public class iterator {
 public static void main(String[] args) {

     // 创建集合
     ArrayList<String> sites = new ArrayList<String>();
     sites.add("1");
     sites.add("2");
     sites.add("3");
     sites.add("4");

     // 获取迭代器
     Iterator<String> it = sites.iterator();

     // 输出集合中的第一个元素
     System.out.println(it.next());
 }
}

 

 

循环集合元素让迭代器it逐个返回集合中所有元素用while循环

package m;

//引入 ArrayList 和 Iterator 类
import java.util.ArrayList;
import java.util.Iterator;

public class iterator {
 public static void main(String[] args) {

     // 创建集合
     ArrayList<String> sites = new ArrayList<String>();
     sites.add("1");
     sites.add("2");
     sites.add("3");
     sites.add("4");

     // 获取迭代器
     Iterator<String> it = sites.iterator();

     // 输出集合中的所有元素
     while(it.hasNext()) {
         System.out.println(it.next());
     }
 }
}

 

 

如果要删除集合中的元素可以用remove()方法

package m;

//引入 ArrayList 和 Iterator 类
import java.util.ArrayList;
import java.util.Iterator;

public class iterator {
 public static void main(String[] args) {
     ArrayList<Integer> numbers = new ArrayList<Integer>();
     numbers.add(12);
     numbers.add(8);
     numbers.add(2);
     numbers.add(23);
     Iterator<Integer> it = numbers.iterator();
     while(it.hasNext()) {
         Integer i = it.next();
         if(i < 10) {  
             it.remove();  // 删除小于 10 的元素
         }
     }
     System.out.println(numbers);
 }
}

 

posted @ 2021-10-21 19:30  kuaiquxie  阅读(113)  评论(0编辑  收藏  举报