最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Java Collection集合iterator方法解析

 更新時間:2020年01月14日 11:46:40   作者:LeeHua  
這篇文章主要介紹了Java Collection集合iterator方法解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下

這篇文章主要介紹了Java Collection集合iterator方法解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下

Iterator接口概述

/**
 * java.util.Iterator接口:選代器(對集合進行遍歷)
 *   有兩個常用的方法
 *          boolean hasNext()
 *             如果仍有元素可以迭代,則返回true。
 *             即判斷集合中還有沒有下ー個元素,有就返回true,沒有就返回 false
 *          E next()
 *             返回送代的下一個元素。
 *             即取出集合中的下一個元素
 *   iterator迭代器,是一個接口,我們無法直接使用,需要使用Iterator接口的實現(xiàn)類對象。
 *       獲取實現(xiàn)類的方式比較特殊Collection接口中有一個方法,叫iterator(),這個方法返回的就是送代器的實現(xiàn)類對象
 *       Iterator<E> iterator()返回在該collection集合的元素上進行迭代的送代器。
 *
 * 迭代器的使用步驟(重點):
 *       1.使用集合中的方法 iterator()獲取送代器的實現(xiàn)類對象,使用Iterator接口接收(多態(tài))
 *       2.使用Iterator接口中的方法hasNext來判斷還有沒有下一個元素
 *       3.使用Iterator接口中的方法next來取出集合中的下一個元素
 */

迭代器代碼的實現(xiàn)

import java.util.ArrayList;
import java.util.Iterator;
import java.util.Collection;

public class Demo01Iterator {
  public static void main(String[] args) {
    Collection <String> collection = new ArrayList<>();

    collection.add("1號");
    collection.add("2號");
    collection.add("3號");
    collection.add("4號");
    collection.add("5號");

    // 第一步:使用集合中的方法 iterator() 獲取送代器的實現(xiàn)類對象
    // 第二步:使用Iterator接口接收(多態(tài))
    Iterator<String> stringIterator = collection.iterator();

    // 第三步:使用Iterator接口中的方法hasNext來判斷還有沒有下一個元素
    while (stringIterator.hasNext()) {
      // 第四步:使用Iterator接口中的方法next來取出集合中的下一個元素
      System.out.println(
          stringIterator.next()
      );
    }
    
  }
}
輸出結果:
1號
2號
3號
4號
5號

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

new一個集合出來
collection = new ArrayList<>()


假設集合中添加有元素
collection = [一號元素, 二號元素, 三號元素, 四號元素, 五號元素]


集合中的元素對應的索引
Index = [0, 1, 2, 3, 4]


調(diào)用iterator方法
collection.iterator()
作用:獲取迭代器的實現(xiàn)類對象井且會把指針(索引)指向集合的-1素引


代碼說明:
while (stringIterator.hasNext()) {
  stringIterator.next()
}
通過Iterator接口的hasNext()方法,判斷集合是否還有沒有下一個元素
如果有下一個元素,那么就調(diào)用Iterator接口的next()方法,取出下一個元素,并且會把指針向后移一位。


就這樣,從索引的 -1 位置的下一位索引,開始獲取元素,直到獲取完全。

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • Java TokenProcessor令牌校驗工具類

    Java TokenProcessor令牌校驗工具類

    這篇文章主要介紹了TokenProcessor令牌校驗工具類 ,非常不錯,具有參考借鑒價值,需要的朋友可以參考下
    2017-03-03
  • Spring?Boot日志介紹和配置

    Spring?Boot日志介紹和配置

    在程序中,日志對象通過LoggerFactory獲取,日志框架如SLF4J提供統(tǒng)一API,便于管理和維護,日志級別分為FATAL、ERROR、WARN、INFO、DEBUG、TRACE,通過配置可細化日志輸出,日志還可持久化存儲和格式化,使用lombok可簡化日志代碼的編寫
    2024-11-11
  • 2020年支持java8的Java反編譯工具匯總(推薦)

    2020年支持java8的Java反編譯工具匯總(推薦)

    這篇文章主要介紹了2020年支持java8的Java反編譯工具匯總,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-06-06
  • Java代碼實現(xiàn)酒店管理系統(tǒng)

    Java代碼實現(xiàn)酒店管理系統(tǒng)

    這篇文章主要為大家詳細介紹了Java代碼實現(xiàn)酒店管理系統(tǒng),文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-05-05
  • Spring零基礎入門IOC

    Spring零基礎入門IOC

    IoC就是比方說有一個類,我們想要調(diào)用類里面的方法(不是靜態(tài)方法),就要創(chuàng)建該類的對象,使用對象調(diào)用方法來實現(xiàn)。但對于Spring來說,Spring創(chuàng)建對象的過程,不是在代碼里面實現(xiàn)的,而是交給Spring來進行配置實現(xiàn)的
    2022-08-08
  • idea使用帶provide修飾依賴導致ClassNotFound

    idea使用帶provide修飾依賴導致ClassNotFound

    程序打包到Linux上運行時,若Linux上也有這些依賴,為了在Linux上運行時避免依賴沖突,可以使用provide修飾,本文主要介紹了idea使用帶provide修飾依賴導致ClassNotFound,下面就來介紹一下解決方法,感興趣的可以了解一下
    2024-01-01
  • SSM項目使用攔截器實現(xiàn)登錄驗證功能

    SSM項目使用攔截器實現(xiàn)登錄驗證功能

    這篇文章主要介紹了在SSM項目中如何使用攔截器,實現(xiàn)登錄驗證功能。文中的實現(xiàn)步驟講解詳細,感興趣的小伙伴可以了解一下
    2022-01-01
  • Java中String.split()的最詳細源碼解讀及注意事項

    Java中String.split()的最詳細源碼解讀及注意事項

    以前經(jīng)常使用String.split()方法,但是從來沒有注意,下面這篇文章主要給大家介紹了關于Java中String.split()最詳細源碼解讀及注意事項的相關資料,文中通過圖文介紹的非常詳細,需要的朋友可以參考下
    2022-07-07
  • MyBatis SpringMVC整合實現(xiàn)步驟詳解

    MyBatis SpringMVC整合實現(xiàn)步驟詳解

    這篇文章主要介紹了MyBatis SpringMVC整合實現(xiàn)步驟詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-08-08
  • Spring使用@Retryable實現(xiàn)自動重試機制

    Spring使用@Retryable實現(xiàn)自動重試機制

    在微服務架構中,服務之間的調(diào)用可能會因為一些暫時性的錯誤而失敗,例如網(wǎng)絡波動、數(shù)據(jù)庫連接超時或第三方服務不可用等,在本文中,我們將介紹如何在 Spring 中使用 @Retryable 實現(xiàn)自動重試機制,需要的朋友可以參考下
    2025-01-01

最新評論

南安市| 富裕县| 镇沅| 清徐县| 汤阴县| 汤阴县| 喀喇沁旗| 英吉沙县| 台湾省| 罗田县| 盐山县| 马山县| 呼玛县| 抚宁县| 新邵县| 兴化市| 凤庆县| 永和县| 漳州市| 兰西县| 涟水县| 黄浦区| 宝山区| 鸡泽县| 紫阳县| 泽州县| 萨迦县| 云南省| 广丰县| 泰来县| 油尖旺区| 长寿区| 綦江县| 尤溪县| 安庆市| 盐山县| 花垣县| 长乐市| 西青区| 全南县| 乌什县|