Java学习之Iterator(迭代器)的一般用法

来源:互联网 发布:android模拟器linux版 编辑:程序博客网 时间:2024/05/17 13:44

迭代器(Iterator)

  迭代器是一种设计模式,它是一个对象,它可以遍历并选择序列中的对象,而开发人员不需要了解该序列的底层结构。迭代器通常被称为“轻量级”对象,因为创建它的代价小。

  Java中的Iterator功能比较简单,并且只能单向移动:

  (1) 使用方法iterator()要求容器返回一个Iterator。第一次调用Iterator的next()方法时,它返回序列的第一个元素。注意:iterator()方法是java.lang.Iterable接口,被Collection继承。

  (2) 使用next()获得序列中的下一个元素。

  (3) 使用hasNext()检查序列中是否还有元素,如果仍有元素可以迭代,则返回 true

  (4) 使用remove()将迭代器新返回的元素删除。

  Iterator是Java迭代器最简单的实现,为List设计的ListIterator具有更多的功能,它可以从两个方向遍历List,也可以从List中插入和删除元素。

迭代器应用:
package com.list; import java.util.ArrayList; import java.util.Iterator; import com.login.User; public class List { public static void main(String[] args) { //创建ArrayList字符 ArrayList<String> list = new ArrayList<String>(); list.add("aa"); list.add("bb"); list.add("cc"); //迭代器用于for循环遍历字符类型的list for (Iterator<String> iter = list.iterator(); iter.hasNext();) { String str = (String)iter.next(); System.out.println(str); } //迭代器用于while循环遍历字符类型的list Iterator<String> iter = list.iterator(); while(iter.hasNext()){ String str = (String) iter.next(); System.out.println(str); } //创建ArrayList对象 ArrayList<User> userArrayList = new ArrayList<User>(); for(int i=0;i<3;i++){ User user = new User(); user.setUsername("a"+i); user.setPassword("b"+i); userArrayList.add(user); } //迭代器用于for循环遍历对象类型的list for (Iterator<User> iter1 = userArrayList.iterator(); iter1.hasNext();) { User user = iter1.next(); System.out.println(user.getUsername()+","+user.getPassword()); } } }

 

 

0 0
原创粉丝点击