摘要:知識點總結(jié)容器知識點總結(jié)容器對象稱作迭代器,用于方便地實現(xiàn)對容器內(nèi)元素的遍歷操作接口定義如下判斷是否有元素沒有被遍歷返回游標當前位置的元素并將游標移動到下一個位置刪除游標左面的元素,在執(zhí)行完之后該操作只能執(zhí)行一次迭代器的使用實現(xiàn)實現(xiàn)原理游
Java知識點總結(jié)(Java容器-Iterator)
@(Java知識點總結(jié))[Java, Java容器]
IteratorIterator對象稱作迭代器,用于方便地實現(xiàn)對容器內(nèi)元素的遍歷操作
Iterator接口定義如下:
boolean hasNext(); //判斷是否有元素沒有被遍歷
Object next(); //返回游標當前位置的元素并將游標移動到下一個位置
void remove(); //刪除游標左面的元素,在執(zhí)行完next之后該操作只能執(zhí)行一次
迭代器的使用HashSet set = new HashSet(); set.add("1" ); set.add("2" ); set.add("3" ); /*Iterator it = set.iterator(); while (it.hasNext()) { String obj = (String) it.next(); System.out.println(obj); }*/ for (Iterator it = set.iterator(); it.hasNext();) { String obj = (String) it.next(); System.out.println(obj); }Iterator實現(xiàn)
/** * Iterator實現(xiàn)原理 */ private class Itr implements Iterator{ int cursor = 0; //游標 int lastRet = -1; //上一次遍歷元素的下標 public boolean hasNext() { return cursor != size(); } public E next() { checkForComodification(); try { int i = cursor; E next = get(i); lastRet = i; cursor = i + 1; return next; } catch (IndexOutOfBoundsException e) { checkForComodification(); throw new NoSuchElementException(); } } public void remove() { if (lastRet < 0) throw new IllegalStateException(); checkForComodification(); try { AbstractList.this.remove(lastRet); if (lastRet < cursor) cursor--; lastRet = -1; expectedModCount = modCount; } catch (IndexOutOfBoundsException e) { throw new ConcurrentModificationException(); } } }
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/71248.html
摘要:而在集合中,值僅僅是一個對象罷了該對象對本身而言是無用的。將這篇文章作為集合的總結(jié)篇,但覺得沒什么好寫就回答一些面試題去了,找了一會面試題又覺得不夠系統(tǒng)。 前言 聲明,本文用的是jdk1.8 花了一個星期,把Java容器核心的知識過了一遍,感覺集合已經(jīng)無所畏懼了!!(哈哈哈....),現(xiàn)在來總結(jié)一下吧~~ 回顧目錄: Collection總覽 List集合就這么簡單【源碼剖析】 Ma...
摘要:知識點總結(jié)容器知識點總結(jié)容器函數(shù)庫是包下的一些接口和類,類是用來產(chǎn)生對象存放數(shù)據(jù)用的,而接口是訪問數(shù)據(jù)的方式。底層也是數(shù)組實現(xiàn),線程安全,效率低效率高,線程不安全。 Java知識點總結(jié)(Java容器-Collection) @(Java知識點總結(jié))[Java, Java容器, JavaCollection] [toc] Collection Collection函數(shù)庫是java.uti...
摘要:知識點總結(jié)容器知識點總結(jié)容器是接口的唯一實現(xiàn),可以確保集合元素處于排序狀態(tài),底層是一棵排序樹。底層使用紅黑樹算法進行維護,因此性能相對于來說要差一些,因為內(nèi)部會自動進行排序操作。 Java知識點總結(jié)(Java容器-TreeSet) @(Java知識點總結(jié))[Java, Java容器, JavaCollection, JavaSet] TreeSet TreeSet是SortedSet接...
摘要:和的區(qū)別是非線程安全的,效率高是基于線程安全的,效率低底層基于鏈表實現(xiàn),鏈表內(nèi)存是散亂的,每一個元素存儲本身內(nèi)存地址的同時還存儲下一個元素的地址。基本上都是以為基礎(chǔ)。 什么是集合 Java是一門面向?qū)ο蟮恼Z言. 為了方便操作多個對象,那么我們就得把這多個對象存儲起來 想要存儲多個對象(變量),我們就需要一個容器 集合就是一個放數(shù)據(jù)的容器(集合類存放的都是對象的引用,而非對象本身) ...
摘要:底層使用的是雙向鏈表數(shù)據(jù)結(jié)構(gòu)之前為循環(huán)鏈表,取消了循環(huán)。快速隨機訪問就是通過元素的序號快速獲取元素對象對應(yīng)于方法。而接口就是用來標識該類支持快速隨機訪問。僅僅是起標識作用。,中文名為雙端隊列。不同的是,是線程安全的,內(nèi)部使用了進行同步。 前言 學(xué)習(xí)情況記錄 時間:week 2 SMART子目標 :Java 容器 記錄在學(xué)習(xí)Java容器 知識點中,關(guān)于List的需要重點記錄的知識點。...
閱讀 1697·2021-10-09 09:44
閱讀 3263·2021-09-27 13:36
閱讀 1520·2021-09-22 15:33
閱讀 1274·2021-09-22 15:23
閱讀 1159·2021-09-06 15:02
閱讀 1695·2019-08-29 16:14
閱讀 2901·2019-08-29 15:26
閱讀 2408·2019-08-28 18:08