java迭代器实现,设计模式 迭代器模式

  java迭代器实现,设计模式 迭代器模式

  迭代器模式:提供一个方法顺序访问一个聚合对象中的各个元素,而又不暴露其内部的表示。

  迭代器模式提供了一种方法,可以顺序访问一个聚合对象中的元素,而又不用知道内部是如何标示的。另外,迭代器模式把在元素之间游走的责任交给迭代器,而不是聚合对象,让聚合更专注于数据集合。

  案例实现情景:我和友人去超市分头购物,在结帐时,我们遍历一下我们的"扫货"清单(遍历打印购物清单),在实现上,我使用数组列表,友人使用事物[]数组,给遍历造成困扰。

  案例代码:

  Thing.java

  公共类的东西{

  私有字符串名称;

  私长价;

  公共事物(字符串名称,长价格){

  this.name=name

  this.price=价格;

  @覆盖

  公共字符串toString() {

  return Thing [name= name ,price= price ];

  Me.java

  public boolean hasNext() {

  while(位置东西数组。长度事物数组[位置]!=null){

  返回真实的

  返回错误的

  @覆盖

  公共事物下一个(){

  返回事物数组[位置];

  @覆盖

  公共无效删除(){

  //无所事事

  Test.java

  公共静态void main(String args[]){

  数组列表迭代器Thing allIterator=新数组列表迭代器thing();

  我我=新的我();

  朋友朋友=新朋友();

  迭代器事物=我。创建迭代器();

  迭代器事物朋友sIterator=朋友。创建迭代器();

  畸形人。添加(meIterator);

  畸形人。add(friendsIterator);

  for(Iterator Thing Iterator:allIterator){

  while(iterator.hasNext()){

  系统。出去。println(迭代器。next());

  系统。出去。println(-);

  测试结果:

  单一职责:一个类应该只有一个引起变化的职责。

  当一个模块或一个类被设计成只支持一组相关的功能时,我们说它具有高内聚。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: