中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當前位置: 首頁 > news >正文

有人用wordpress做企業(yè)seo做得比較好的公司

有人用wordpress做企業(yè),seo做得比較好的公司,國外平面設計作品集,上饒有哪些做網(wǎng)站的店1.迭代器模式的定義 迭代器模式提供一種對容器對象中的各個元素進行訪問的方法,而不需要暴露該對象的內(nèi)部細節(jié); 在軟件系統(tǒng)中,容器對象有兩個職責:一是存儲數(shù)據(jù),二是遍歷數(shù)據(jù);從依賴性上看,前者…

1.迭代器模式的定義

? ? ? ? 迭代器模式提供一種對容器對象中的各個元素進行訪問的方法,而不需要暴露該對象的內(nèi)部細節(jié);

? ? ? ? 在軟件系統(tǒng)中,容器對象有兩個職責:一是存儲數(shù)據(jù),二是遍歷數(shù)據(jù);從依賴性上看,前者是基本職責,而后者是可以變化的,又是可以分離的,因此可以將遍歷數(shù)據(jù)的行為從容器中抽取出來,封裝到迭代器對象中,由迭代器來提供遍歷數(shù)據(jù)的行為,這將簡化聚合對象的設計,更加符合單一職責原則;

? ? ? ? 對于迭代器模式,設計時很少用到,但編碼時經(jīng)常用到,目前大多數(shù)編程語言中,迭代器已經(jīng)成為一個基礎的類庫,直接能用來遍歷集合對象;

1.1 迭代器模式的優(yōu)缺點

優(yōu)點

  • 迭代器模式支持以不同方式遍歷一個集合對象,在同一個集合對象上可以定義多種遍歷方式,在迭代器模式中只需要用一個不同的迭代器來替換原有的迭代器,即可改變遍歷算法,也可以自己定義迭代器的子類以支持新的遍歷方式;
  • 迭代器簡化了集合類,原有的集合對象不需要再自行提供數(shù)據(jù)遍歷等方法;
  • 由于引入了抽象層,增加新的集合類和迭代器類都很方便,無需修改原有代碼,滿足基于接口編程而非實現(xiàn)和開閉原則;

缺點

  • 由于迭代器模式將存儲數(shù)據(jù)和遍歷數(shù)據(jù)的職責分離,增加了類的個數(shù),增加了系統(tǒng)的復雜性;
  • 抽象迭代器的設計難度較大,需要充分考慮到系統(tǒng)將來的擴展;

1.2 迭代器模式的使用場景

  • 減少程序中重復的遍歷代碼;
  • 當需要為遍歷不同的集合結構提供一個統(tǒng)一的接口時或當訪問一個集合對象的內(nèi)容而無需暴露其內(nèi)部細節(jié)時;

2.迭代器模式的原理

  • 抽象集合類(Aggregate):用于存儲和管理元素對象,定義存儲、添加、刪除集合的功能,并且聲明了一個 createIterator() 方法用于創(chuàng)建迭代器對象;
  • 具體集合類(ConcreteAggregate):實現(xiàn)抽象集合類,返回一個具體迭代器的實例;
  • 抽象迭代器類(Interator):定義訪問和遍歷集合元素的接口,通常包含 hasNext()、next() 等方法;
  • 具體迭代器類(ConcreteIterator):實現(xiàn)抽象迭代器接口所定義的方法,完成對集合對象的遍歷,同時記錄遍歷的當前位置;

3.迭代器模式的實現(xiàn)

【代碼】

? ? ? ? 抽象迭代器

public interface IteratorIterator<E> {void reset();   //重置為第一個元素E next();   //獲取下一個元素E currentItem();    //檢索當前元素boolean hasNext();  //判斷是否還有下一個元素存在
}

? ? ? ? 抽象集合

public interface ListList<E> {//獲取迭代器對象的抽象方法(面向接口編程)IteratorIterator<E> Iterator();
}

????????具體迭代器

public class TopicIterator implements IteratorIterator<Topic> {//Topic數(shù)組private Topic[] topics;//記錄存儲位置private int position;public TopicIterator(Topic[] topics) {this.topics = topics;position = 0;}@Overridepublic void reset() {position = 0;}@Overridepublic Topic next() {return topics[position++];}@Overridepublic Topic currentItem() {return topics[position];}@Overridepublic boolean hasNext() {if(position >= topics.length){return false;}return true;}
}

? ? ? ? 抽象迭代器

public class TopicList implements ListList<Topic> {private Topic[] topics;public TopicList(Topic[] topics) {this.topics = topics;}@Overridepublic IteratorIterator<Topic> Iterator() {return new TopicIterator(topics);}
}

? ? ? ? 客戶端

public class Client {public static void main(String[] args) {Topic[] topics = new Topic[4];topics[0] = new Topic("topic1");topics[1] = new Topic("topic2");topics[2] = new Topic("topic3");topics[3] = new Topic("topic4");TopicList topicList = new TopicList(topics);IteratorIterator<Topic> iterator = topicList.Iterator();while(iterator.hasNext()){Topic t = iterator.next();System.out.println(t.getName());}}
}
http://m.risenshineclean.com/news/31873.html

相關文章:

  • 營銷導向企業(yè)網(wǎng)站策劃java培訓
  • 手機觸屏網(wǎng)站模板學seo優(yōu)化
  • 網(wǎng)站需要審核嗎營銷推廣運營
  • 政府網(wǎng)站集約化建設流程網(wǎng)絡推廣網(wǎng)站建設
  • 怎么樣做網(wǎng)站代理商寧波seo排名外包公司
  • 網(wǎng)站建設推廣優(yōu)化話術制作網(wǎng)頁的工具軟件
  • 贛州做網(wǎng)站j營銷型網(wǎng)站建設步驟
  • 最好看免費觀看高清大全電影網(wǎng)站網(wǎng)站頁面seo
  • 低價的網(wǎng)站建設南寧網(wǎng)站建設公司
  • 家用電腦如何做網(wǎng)站服務器網(wǎng)絡營銷師有前途嗎
  • 企業(yè)網(wǎng)站推廣案例佛山網(wǎng)站優(yōu)化服務
  • bs模式網(wǎng)站開發(fā)外貿(mào)平臺排名
  • 第一個做電子商務的網(wǎng)站可以免費打廣告的網(wǎng)站
  • 哪些彩票網(wǎng)站可做代理賺錢推廣網(wǎng)站怎么制作
  • 網(wǎng)站建設總體說明重慶seowhy整站優(yōu)化
  • 做高端生活方式的網(wǎng)站seo軟文是什么
  • 網(wǎng)站 微信小程序怎么做愛站網(wǎng)seo查詢
  • 免費b2b網(wǎng)站如何做排名百度客服投訴中心
  • 網(wǎng)站 做 vga怎么搭建一個網(wǎng)站
  • 做視頻網(wǎng)站都需要什么軟件下載十種網(wǎng)絡推廣的方法
  • 甌北網(wǎng)站制作系統(tǒng)外貿(mào)獨立站怎么建站
  • 建設項目環(huán)保驗收網(wǎng)站東莞今日新聞大事
  • 濟南做外貿(mào)的網(wǎng)站公司嗎外鏈生成器
  • 官方網(wǎng)站建設推廣seo優(yōu)化工程師
  • 網(wǎng)站建設預算手機版百度一下
  • 南通網(wǎng)站建設優(yōu)化公司seo研究中心怎么了
  • 學電商比較好的網(wǎng)站有哪些網(wǎng)絡營銷推廣處點
  • 購物網(wǎng)站html模板下載網(wǎng)站打開
  • 做網(wǎng)站什么空間比較好微信引流的十個方法
  • 網(wǎng)站建設用的服務器重慶公司網(wǎng)站seo