<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                ### 概述 因為Collection接口中是沒有共同屬性下標的,set集合沒有下標.所以提供了迭代器獲取元素.所以迭代器跟下標沒有關系. Java中提供了很多個集合,它們在存儲元素時,采用的存儲方式不同 .我們要取出這些集合中的元素,可通過一種通用的方式來完成 . collection集合元素的通用獲取方式,在取元素之前先要判斷集合中有沒有此元素,如果有,就把這個元素取出來,繼續再判斷.如果還有就再取出來.一直把集合中的所有元素全部取出. 這種取出方式專業術語稱為迭代 . 迭代器的作用就是面對不同的容器,采用相同的方式去獲取元素 . 在Java中iterator是一個接口 . ### 迭代器的實現原理 ![](https://box.kancloud.cn/bd2b6e94f45ecd86f5c411249b0caeba_943x517.png) ![](https://box.kancloud.cn/9f49c04a2c93704854c13cb526db70cd_665x283.png) ### 方法 這些方法對集合通用 . #### hasNext() 判斷集合中還有沒有可以被取出的元素,如果有,返回true. #### next() 取出集合中下一個元素 . ### 使用方法 while ~~~ Collection<String> coll = new ArrayList<String>(); coll.add("a"); coll.add("b"); coll.add("c"); Iterator it = coll.iterator(); while(it.hasNext()){ System.out.println(it.next()); } ~~~ for ~~~ Collection<String> coll = new ArrayList<String>(); coll.add("a"); coll.add("b"); coll.add("c"); for (Iterator<String> it =coll.iterator();it.hasNext();){ System.out.println(it.next()); } ~~~ for循環比較節約內存 ### 集合中的轉型 不指定存儲的類型,就可以存儲任意類型的數據了 . ~~~ public static void main(String[] args) { Collection coll = new ArrayList(); //這里沒有指定存儲的類型 coll.add("1234"); coll.add("123"); coll.add("12"); Iterator it = coll.iterator(); //迭代器這里也不能指定數據類型 while(it.hasNext()){ String x = (String)it.next(); //這里需要向下轉型 System.out.println(x.length()); } } ~~~ 結果 ~~~ 4 3 2 ~~~ ~~~ Collection coll = new ArrayList(); coll.add(1); coll.add("1"); coll.add('1'); Iterator it = coll.iterator(); while(it.hasNext()){ System.out.println(it.next()); } } ~~~ 結果 ~~~ [1, 1, 1] ~~~ 在使用集合的時候最好指定集合類型, 否則傳入的參數都是為object類型,如果需要使用元素的屬性和方法需要向下轉型 .
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看