集合框架
集合框架是用于表示和操作集合的統(tǒng)一體系結(jié)構(gòu)九串,使它們能夠獨(dú)立于其表示的細(xì)節(jié)而被操縱。它減少了編程工作寺鸥,同時(shí)提高了性能猪钮。它支持不相關(guān) API 之間的互操作性,減少設(shè)計(jì)和學(xué)習(xí)新 API 的工作兩胆建,并促進(jìn)軟件重用烤低。該框架基于十幾個(gè)集合接口。它包括這些接口和算法的實(shí)現(xiàn)來操縱它們笆载。
Iterator(迭代器)源碼閱讀
一個(gè)集合的迭代器扑馁。迭代器代替 Java 集合框架中的枚舉。迭代器在兩個(gè)方面與枚舉不同:
(1)迭代器允許調(diào)用者在迭代期間使用明確定義的語義從底層集合中移除元素凉驻。
(2)方法名稱已被改進(jìn)
該接口是 Java 集合框架的成員腻要。從 JDK1.2版本開始使用。
方法
void forEachRemaining(Consumer<? super E> action):
對(duì)每個(gè)剩余的元素執(zhí)行給定的操作沿侈,直到處理完所有的元素或操作拋出異常闯第。如果指定了該順序, 則按迭代順序執(zhí)行操作缀拭。 由操作拋出的異常被中繼給調(diào)用者咳短。
boolean hasNext():如果迭代包含更多的元素,則返回true.換句話說蛛淋,如果 next() 返回一個(gè)元素而不是引發(fā)異常咙好,則返回true。
E next():返回迭代中的下一個(gè)元素.
void remove():從底層集合中移除此迭代器返回的最后一個(gè)元素(可選操作)褐荷。每次調(diào)用 next() 時(shí)只能調(diào)用一次該方法勾效。如果除了通過調(diào)用此方法之外的任何其他方式正在進(jìn)行迭代過程中修改了基礎(chǔ)集合, 則該迭代器的行為是未指定的。