亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

JAVA Iterator接口與增強(qiáng)for循環(huán)的實(shí)現(xiàn)

瀏覽:2日期:2022-08-20 11:30:34

1 Iterator迭代器

1.1 Iterator接口

java.util.Iterator接口也是Java集合中的一員; Iterator主要用于迭代訪問(wèn)(即遍歷)Collection中的元素,因此Iterator對(duì)象也被稱為迭代器。 public Iterator iterator(): 獲取集合對(duì)應(yīng)的迭代器,用來(lái)遍歷集合中的元素。

迭代:Collection集合元素的通用獲取方式。在取元素之前先判斷集合中有沒(méi)有元素。如果有,就把這個(gè)元素取出來(lái);繼續(xù)判斷,如果還有就再取出來(lái);就這樣一直把集合中的所有元素全部取出。

1.2 Iterator接口常用方法

public boolean hasNext():如果下一個(gè)元素存在,返回 true,否則false; public E next():返回下一個(gè)元素。

1.3 案例演示

public class Demo { public static void main(String[] args) { // 使用多態(tài)方式創(chuàng)建對(duì)象 Collection<String> sg = new ArrayList<String>(); // 添加元素到集合 sg.add('劉備'); sg.add('關(guān)羽'); sg.add('張飛'); //使用迭代器進(jìn)行遍歷 Iterator<String> it = sg.iterator(); while(it.hasNext()){ String s = it.next(); System.out.println(s); } }}

劉備關(guān)羽張飛

tips::如果集合中已經(jīng)沒(méi)有元素了,還繼續(xù)使用迭代器的next方法,將會(huì)發(fā)生java.util.NoSuchElementException沒(méi)有集合元素的錯(cuò)誤。

1.2 迭代器的實(shí)現(xiàn)原理

Iterator迭代器對(duì)象在遍歷集合時(shí),內(nèi)部采用指針的方式來(lái)跟蹤集合中的元素。在調(diào)用Iterator的next方法之前,迭代器的索引位于第一個(gè)元素之前,不指向任何元素,當(dāng)?shù)谝淮握{(diào)用迭代器的next方法后,迭代器的索引會(huì)向后移動(dòng)一位,指向第一個(gè)元素并將該元素返回,當(dāng)再次調(diào)用next方法時(shí),迭代器的索引會(huì)指向第二個(gè)元素并將該元素返回,依此類推,直到hasNext方法返回false,表示到達(dá)了集合的末尾,終止對(duì)元素的遍歷。

2 增強(qiáng)for循環(huán)

增強(qiáng)for循環(huán)專門(mén)用來(lái)遍歷數(shù)組和Collection,它的內(nèi)部原理其實(shí)是個(gè)Iterator迭代器,所以在遍歷的過(guò)程中,不能對(duì)元素進(jìn)行增刪操作。

格式:

for(元素的數(shù)據(jù)類型 變量 : Collection集合or數(shù)組){ //寫(xiě)操作代碼}

示例1:遍歷數(shù)組

public class Demo { public static void main(String[] args) { int[] arr = {3,5,6,87}; //使用增強(qiáng)for遍歷數(shù)組 for(int a : arr){//a代表數(shù)組中的每個(gè)元素 System.out.println(a); } }}

35687

示例2:遍歷集合

public class Demo { public static void main(String[] args) { Collection<String> sg = new ArrayList<String>(); sg.add('劉備'); sg.add('關(guān)羽'); sg.add('張飛'); //使用增強(qiáng)for遍歷 for(String s :sg){//接收變量s代表 代表被遍歷到的集合元素 System.out.println(s); } }}

劉備關(guān)羽張飛

到此這篇關(guān)于JAVA Iterator接口與增強(qiáng)for循環(huán)的實(shí)現(xiàn)的文章就介紹到這了,更多相關(guān)JAVA Iterator接口與增強(qiáng)for循環(huán)內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!

標(biāo)簽: Java
相關(guān)文章:
主站蜘蛛池模板: 亚洲自拍第二页 | 1024精品| 免费观看一级特黄欧美大片 | 亚洲国产午夜看片 | 看国产黄色片 | 亚洲18岁禁止 | 色综合亚洲天天综合网站 | 古代的一a一片一级一片 | 亚色中文字幕 | 看真人一级毛片 | 99视频在线| 欧美最新一区二区三区四区 | 在线免费观看91 | www.亚洲国产 | 欧美区一区 | 久久久一级 | 久久精品国产99久久香蕉 | 97视频在线免费播放 | 1000部又爽又黄无遮挡的视频 | 亚洲国产女人aaa毛片在线 | 米奇精品一区二区三区 | 三级黄色一级视频 | 久久久久久久久综合影视网 | 视频播放在线观看精品视频 | 久久这里只有精品免费播放 | 免费jizz在在线播放国产 | 邪恶工番口番大全全彩色 | 福利亚洲 | 南京巨根无套操到你窒息 | 亚洲天堂久久精品成人 | 4455永久在线毛片观看 | 爱爱小视频免费体验区在线观看 | 久久福利青草狠狠午夜 | 麻豆亚洲精品一区二区 | bbixx在线观看 | 成年人网站在线观看免费 | 免费在线观看一级毛片 | 男女激情爱爱 | 亚洲无吗在线视频 | 九九久久国产精品免费热6 九九天天影视 | 欧美日韩一区二区三区毛片 |