- 浏览: 428940 次
- 性别:
- 来自: 上海
文章分类
- 全部博客 (170)
- java (77)
- javascript (5)
- jsp (1)
- servlet (6)
- struts (8)
- hibernate (3)
- spring (4)
- ajax (5)
- jquery (3)
- apache cxf (0)
- ext.js (1)
- hadoop (0)
- android (0)
- html5 (2)
- linux (5)
- flex (1)
- tomcat (1)
- jboss (0)
- nginx (0)
- mysql (16)
- sql server (3)
- oracle (4)
- div+css (0)
- mybatis (4)
- design patterns (22)
- xml (2)
- postgresql (3)
- velocity (1)
- freemarker (1)
- kendo-ui (2)
- ibatis (1)
- socket (1)
- C and C++ (1)
- C# (2)
- 程序设计----算法 (0)
- jersey (1)
- dd (0)
- perl (1)
- shell (0)
最新评论
-
书策稠浊:
兄弟,这tm是Java?
java调用百度地图和谷歌地图 -
fengyunlouyanyu:
jquery----删除指定id的div下的img -
yangjianzhouctgu:
Neoman 写道hi,我看你引入了kendo.web.min ...
kendo-ui中kendoGrid的用法 -
Neoman:
hi,我看你引入了kendo.web.min.js 这个js, ...
kendo-ui中kendoGrid的用法 -
yangjianzhouctgu:
llscp 写道这是JS吧...对的呀
java调用百度地图和谷歌地图
IProject.java代码如下:
Project.java代码如下:
IProjectIterator.java代码如下:
ProjectIterator.java代码如下:
Boss.java代码如下:
运行结果如下:
package com.designPattern.iterator; public interface IProject { public void add(String name,int num,int cost); public String getProjectInfo(); public IProjectIterator iterator(); }
Project.java代码如下:
package com.designPattern.iterator; import java.util.ArrayList; public class Project implements IProject{ private ArrayList<IProject> projectList = new ArrayList<IProject>(); private String name = ""; private int num = 0; private int cost = 0; public Project(){ } public Project(String name,int num,int cost){ this.name = name; this.num = num; this.cost = cost; } @Override public void add(String name, int num, int cost) { this.projectList.add(new Project(name,num,cost)); } @Override public String getProjectInfo() { String info = "项目名称是:"+this.name+"\t项目人数为:"+this.num+"\t项目费用为:"+this.cost; return info; } @Override public IProjectIterator iterator() { return new ProjectIterator(this.projectList); } }
IProjectIterator.java代码如下:
package com.designPattern.iterator; import java.util.Iterator; public interface IProjectIterator extends Iterator<IProject>{ }
ProjectIterator.java代码如下:
package com.designPattern.iterator; import java.util.ArrayList; public class ProjectIterator implements IProjectIterator{ private ArrayList<IProject> projectList = new ArrayList<IProject>(); private int currentItem = 0; public ProjectIterator(ArrayList<IProject> projectList){ this.projectList = projectList; } @Override public boolean hasNext() { boolean bool = true; if(this.currentItem>=projectList.size()||this.projectList.get(this.currentItem)==null){ bool = false ; } return bool; } @Override public IProject next() { return (IProject)this.projectList.get(this.currentItem++); } @Override public void remove() { } }
Boss.java代码如下:
package com.designPattern.iterator; /** * JDK1.2之后出现的Iterator * @author yangjianzhou * */ public class Boss { public static void main(String[] args) { IProject project = new Project(); project.add("星球大战", 10, 100000); project.add("CS", 10, 100000); project.add("WOW", 10, 100000); project.add("地下城勇士", 10, 100000); for(int i=4;i<100;i++){ project.add("第个"+i+"项目", 20, 100000); } IProjectIterator projectIterator = project.iterator(); while(projectIterator.hasNext()){ IProject p = projectIterator.next(); System.out.println(p.getProjectInfo()); } } }
运行结果如下:
项目名称是:星球大战 项目人数为:10 项目费用为:100000 项目名称是:CS 项目人数为:10 项目费用为:100000 项目名称是:WOW 项目人数为:10 项目费用为:100000 项目名称是:地下城勇士 项目人数为:10 项目费用为:100000 项目名称是:第个4项目 项目人数为:20 项目费用为:100000 项目名称是:第个5项目 项目人数为:20 项目费用为:100000 项目名称是:第个6项目 项目人数为:20 项目费用为:100000 项目名称是:第个7项目 项目人数为:20 项目费用为:100000 项目名称是:第个8项目 项目人数为:20 项目费用为:100000 项目名称是:第个9项目 项目人数为:20 项目费用为:100000
发表评论
-
设计模式----中介者模式(demiator pattern)
2013-07-21 22:55 935AbstractMediator.java代码如下: pa ... -
设计模式----原型模式(prototype pattern)
2013-07-21 22:51 641AdvTemplate.java代码如下: package ... -
设计模式----状态模式(state pattern)
2013-07-21 22:48 1207LiftState.java代码如下: package ... -
设计模式----访问者模式(visitor pattern)
2013-07-21 22:44 978IVisitor.java代码如下: package co ... -
设计模式----观察者模式(observer)
2013-07-20 19:53 1073这里采用两种方式实现观察者模式:第一种方式为完全自己写, ... -
设计模式----组合模式(composite)
2013-07-20 16:13 933该设计模式是以公司的组织结构为背景的 Crop.java代码 ... -
设计模式----装饰者模式(decorator pattern)
2013-07-15 09:08 1028SchoolReport.java代码如下: packag ... -
设计模式----命令模式(command pattern)
2013-07-15 09:09 960Group.java代码如下: pa ... -
设计模式----桥梁模式(bridge pattern)
2013-07-14 22:21 1187Product.java代码如下: package com ... -
设计模式----模板方法模式(template method pattern)
2013-07-14 17:00 1149HummerModel.java代码如下: packag ... -
设计模式----适配器模式(adapter)
2013-07-14 13:37 867IUserInfo.java代码如下: package c ... -
设计模式----门面模式(facade)
2013-07-14 13:30 949LetterProcess.java代码如下 ... -
设计模式----抽象工厂模式(abstract factory pattern)
2013-07-13 23:09 915Human.java代码如下: package com. ... -
设计模式----工厂方法模式(factory method pattern)
2013-07-10 22:19 1083给定一个工厂类,用这个工厂类造出一堆对象来,这些对象对应的类实 ... -
设计模式----多例模式(Multition)
2013-07-02 22:47 1036Emperor.java 代码如下: ... -
设计模式----单例模式(singleton)
2013-06-30 22:17 759单例就是唯一的意思。 第一种单例实现方式(在多线程环境中存在 ... -
设计模式----代理模式(proxy)
2013-06-30 22:02 963代理模式主要使用了java ... -
设计模式----策略模式(strategy)
2013-06-29 22:17 1092本文参考别人设计模式的一个例子。 关于诸葛亮的三个锦囊妙计的 ... -
装饰着模式(decorator)
2012-09-09 21:51 1010一下代码就是运用了装饰者模式: package com.ba ... -
观察者模式(observer)
2012-09-09 19:36 945设计模式中观察者模式的实现有很多方式,这里列出两种实现方式 1 ...
相关推荐
迭代器模式是一种行为设计模式,它允许我们顺序访问聚合对象的元素,而无需暴露其底层表示。在Java中,迭代器模式广泛应用于集合框架,如ArrayList、LinkedList等。本示例将深入探讨如何在Java中实现和使用迭代器...
迭代器设计模式是一种常用的行为设计模式,它提供了一种方法来顺序访问聚合对象的元素,而又不暴露其底层表示。这个“iterator-demo”应该是一个示例项目,用于演示如何在实际编程中应用迭代器模式。下面我们将深入...
迭代器模式是一种行为设计模式,它提供了一种方法来顺序访问聚合对象的元素,而无需暴露其底层表示。这种模式允许我们遍历集合中的每个元素,同时保持集合本身抽象,不需了解其内部结构。 在Java、C#等面向对象语言...
迭代器模式是软件设计模式中的一种行为模式,它在Android开发中被广泛应用,尤其是在处理集合对象的遍历操作时。这种模式提供了一种方法来顺序访问聚合对象的元素,而又不暴露其底层表示。在Java或Android编程中,...
迭代器模式是软件设计模式中的一种行为模式,它在C#等面向对象编程语言中有着广泛的应用。这个模式的主要目标是允许用户遍历一个聚合对象(如数组、集合或列表)的所有元素,而无需了解底层的实现细节。下面将详细...
Java 迭代器模式是一种行为设计模式,它提供了一种访问集合对象元素的方法,而不需要暴露该对象的内部表示。该模式适用于需要遍历集合对象的场景,例如数组、列表、树等。 迭代器模式的主要优点是: 1. 避免了集合...
迭代器模式是软件设计模式中的一种行为模式,其主要目的是为了在不暴露聚合对象内部结构的情况下,提供一种顺序访问聚合对象中各个元素的方式。在Java中,迭代器模式被广泛应用于集合类,如ArrayList、LinkedList等...
迭代器模式是一种软件设计模式,它提供了一种方法来顺序访问聚合对象的元素,而无需暴露其底层表示。在iOS开发中,迭代器模式同样适用,可以帮助开发者在不暴露内部数据结构的情况下遍历集合对象。下面我们将深入...
C#面向对象设计模式 (行为型模式) Iterator 迭代器模式 视频讲座下载
迭代器模式是软件设计模式中的一种行为模式,它在编程中扮演着重要的角色,尤其是在处理集合数据时。迭代器模式的核心思想是提供一种方法来顺序访问聚合对象的元素,而无需暴露其底层表示。这种模式使得用户可以在不...
迭代器模式(Iterator Pattern)是Java设计模式中的行为模式之一,它提供了一种方法来顺序访问聚合对象的元素,而又不暴露其底层表示。在Java中,迭代器模式被广泛应用于集合类,如ArrayList、LinkedList等,通过...
迭代器模式是一种行为设计模式,它提供了一种方法来顺序访问聚合对象的元素,而无需暴露其底层表示。在本文中,我们将深入探讨迭代器模式的概念,并通过Python和C++两种编程语言展示其实现。 首先,理解迭代器模式...
迭代器模式(IteratorPattern)是设计模式中的一种行为模式,它提供了一种顺序访问聚合对象元素的方法,同时又不暴露其底层表示。这种模式允许我们遍历集合对象的元素,而无需暴露其内部结构。在Java、C#等面向对象...
1. 迭代器模式的介绍 迭代器是针对集合对象而生的,对于集合对象而言,必然涉及到集合元素的添加删除操作,同时也肯定支持遍历集合元素的操作,我们...迭代器角色(Iterator):迭代器角色负责定义访问和遍历元素的接口
迭代器模式是23种设计模式之一,属于行为型模式。它提供了一种访问聚合对象元素的方式,而不需要暴露该对象的内部实现。迭代器模式的主要目的是让开发者能够轻松地遍历聚合对象中的元素,而不需要关心对象的内部实现...
迭代器模式是软件设计模式中的行为模式之一,它提供了一种方法来顺序访问聚合对象的元素,而又不暴露其底层表示。在Java编程语言中,迭代器模式的应用尤为广泛,尤其是在处理集合类如ArrayList、LinkedList等时。这...
迭代器模式是软件设计模式中的行为模式之一,它在C++编程中有着广泛的应用。这个模式提供了一种方法来顺序访问聚合对象的元素,而无需暴露其底层表示。通过迭代器,用户可以遍历集合中的所有元素,而无需知道如何...
代理模式(Proxy Pattern)、单例模式(Singleton Pattern)、工厂方法...迭代器模式(Iterator Pattern)、组合模式(Composite Pattern)、观察者模式(Observer Pattern)、责任链模式(Chain of Responsibility ...
迭代器模式是软件设计模式中的一种行为模式,它允许我们顺序访问聚合对象的元素,而无需暴露其底层表示。在编程中,特别是面向对象编程中,迭代器模式扮演着非常重要的角色,它提供了统一的接口来遍历各种集合类型,...