`

设计模式:迭代器模式

 
阅读更多

迭代器是用于遍历一个对象的集合。它是一个比较常用的模式,你之前或许就用过。当你看到像hasNext()和next()的东西时,它或许就是一个迭代器模式。例如,你可能遍历一个数据查找记录的列表。

1、迭代器模式类图



 2、迭代器模式Java代码

interface IIterator{
	public boolean hasNext();
	public Object next();
}
 
interface IContainer{
	public IIterator createIterator();
}
 
class RecordCollection implements IContainer{
	private String recordArray[] = {"first","second","third","fourth","fifth"};
 
	public IIterator createIterator(){
		RecordIterator iterator = new RecordIterator();
		return iterator;
	}
 
	private class RecordIterator implements IIterator{
		private int index;
 
		public boolean hasNext(){
			if (index < recordArray.length)
				return true;
			else
				return false;
		}
 
		public Object next(){
			if (this.hasNext())
				return recordArray[index++];
			else
				return null;
		}
	}
}
 
public class TestIterator {
	public static void main(String[] args) {
		RecordCollection recordCollection = new RecordCollection();
		IIterator iter = recordCollection.createIterator();
 
		while(iter.hasNext()){
			System.out.println(iter.next());
		}	
	}
}

 3、实际应用在JDK

在java.util package,迭代器接口定义如下:

public interface Iterator<E> {
    boolean hasNext();
    E next();
    void remove();
}

 然后,这些类就可以创建出一个迭代器,例如,TreeSet#iterator(),HashSet#iterator()等。

  • 大小: 43.8 KB
分享到:
评论

相关推荐

    设计模式之迭代器模式

    迭代器模式是软件设计模式中的一种行为模式,它允许我们顺序访问聚合对象的元素,而无需暴露其底层表示。在编程中,特别是面向对象编程中,迭代器模式扮演着非常重要的角色,它提供了统一的接口来遍历各种集合类型,...

    23钟设计模式之迭代器模式模式

    迭代器模式是软件开发中广泛使用的设计模式之一,特别是在处理聚合数据结构如数组、列表和集合时。迭代器模式可以提供一种统一的方式来遍历这些结构中的元素,从而使得开发者不需要关心聚合对象的内部实现细节。通过...

    设计模式之迭代器模式(新)

    迭代器模式是软件设计模式中的一种行为模式,它允许我们顺序访问聚合对象的元素,而无需暴露其底层表示。在“设计模式之迭代器模式(新)”中,我们将深入探讨这种模式的核心概念、实现方式以及它在实际编程中的应用...

    设计模式之迭代器模式(Iterator)

    迭代器模式是软件设计模式中的一种行为模式,它在编程中扮演着重要的角色,尤其是在处理集合数据时。迭代器模式的核心思想是提供一种方法来顺序访问聚合对象的元素,而无需暴露其底层表示。这种模式使得用户可以在不...

    Android Ap 开发 设计模式第一篇:迭代器模式

    本文将深入探讨设计模式中的迭代器模式,这是一种在Android APK开发中非常实用的模式,特别是在处理集合数据时。 迭代器模式是一种行为设计模式,它的主要目的是提供一种方法来顺序访问聚合对象的元素,而又不暴露...

    设计模式的迭代器模式的例子

    迭代器模式是软件设计模式中的一种行为模式,它允许我们顺序访问聚合对象的元素,而无需暴露其底层表示。在Java、C#等面向对象语言中,迭代器模式被广泛应用于容器类,如ArrayList、LinkedList等,使得我们可以方便...

    Android编程设计模式之迭代器模式详解

    Android编程设计模式之迭代器模式详解 Android编程设计模式之迭代器模式是Android开发中常用的设计模式之一。迭代器模式(Iterator Pattern)又称为游标(Cursor)模式,是行为型设计模式之一。该模式的主要目的是...

    设计模式之迭代器与组合模式

    这份文档以例子的形式讲诉了设计模式之迭代器与组合模式,希望可以帮助学习的人!

    《设计模式:可复用面向对象软件的基础》英文版

    例如责任链模式(Chain of Responsibility)、命令模式(Command)、解释器模式(Interpreter)、迭代器模式(Iterator)、中介者模式(Mediator)、备忘录模式(Memento)、观察者模式(Observer)、状态模式...

    迭代器模式Demo

    迭代器模式是一种设计模式,它在软件工程中扮演着重要的角色,特别是在处理集合或容器类对象的遍历操作时。这种模式提供了一种方法来顺序访问聚合对象的元素,而无需暴露其底层表示。在Java、C#等面向对象语言中,...

    设计模式(C#)之迭代器模式(Iterator Pattern)

    迭代器模式是软件设计模式中的一种行为模式,它在C#等面向对象编程语言中有着广泛的应用。这个模式的主要目标是允许用户遍历一个聚合对象(如数组、集合或列表)的所有元素,而无需了解底层的实现细节。下面将详细...

    设计模式-迭代器模式(讲解及其实现代码)

    迭代器模式是一种行为设计模式,它提供了一种方法来顺序访问聚合对象的元素,而无需暴露其底层表示。这种模式允许我们遍历集合中的每个元素,同时保持集合本身抽象,不需了解其内部结构。 在Java、C#等面向对象语言...

    软件设计模式作业+答案

    迭代器模式(Iterator Pattern):提供了一种遍历集合对象的接口,隐藏了集合对象的内部实现细节。 访问者模式(Visitor Pattern):提供了一种访问和操作对象的接口,避免了对象之间的紧耦合。 中介者模式...

    设计模式-迭代器模式

    迭代器模式是一种软件设计模式,它提供了一种方法来顺序访问聚合对象的元素,而无需暴露其底层表示。在iOS开发中,迭代器模式同样适用,可以帮助开发者在不暴露内部数据结构的情况下遍历集合对象。下面我们将深入...

    Java设计模式课件迭代器模式.pptx

    Java设计模式 - 迭代器模式 迭代器模式是一种对象行为型模式,是一种提供一种方法顺序访问一个聚合对象中各个元素,而不用暴露该对象的内部表示的模式。迭代器模式的主要职责是将遍历数据的行为从聚合对象中分离...

    迭代器设计模式示例

    在Java、C++、Python等编程语言中,迭代器模式被广泛使用,为遍历各种容器提供了统一的接口。下面我们将深入探讨迭代器设计模式的原理、结构以及如何通过代码实现。 迭代器模式的主要角色包括: 1. **聚合对象**...

    【Java设计模式】(1)迭代器模式Iterator

    迭代器模式(Iterator Pattern)是Java设计模式中的行为模式之一,它提供了一种方法来顺序访问聚合对象的元素,而又不暴露其底层表示。在Java中,迭代器模式被广泛应用于集合类,如ArrayList、LinkedList等,通过...

    迭代器模式(Iterator Pattern)详解 1. 什么是迭代器模式? 2. 为什么需要迭代器模式? 3. 迭代器模式的核心概念 3.1 迭代器(Iterator) 3.2 具体迭代器(Conc

    8. 迭代器模式与其他设计模式的比较 8.1 迭代器模式 vs 访问者模式 8.2 迭代器模式 vs 组合模式 8.3 迭代器模式 vs 模板方法模式 9. 迭代器模式的优缺点 9.1 优点 9.2 缺点 10. 何时使用迭代器模式? 11. 常见问题与...

Global site tag (gtag.js) - Google Analytics