<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(也稱為序列) . 此接口的用戶可以對列表中每個元素的摻入位置進行精確的控制 .用戶可以根據元素的整數索引(在列表中的位置)訪問元素,并搜索列表中的元素 . ### 特點 * 它是一個元素存取有序的集合。例如,存元素的順序是11、22、33。那么集合中,元素的存儲就是按照11、22、33的順序完成的) . * 它是一個帶有索引的集合,通過索引就可以精確的操作集合中的元素(與數組的索引是一個道理) . * 集合中可以有重復的元素,通過元素的equals方法,來比較是否為重復的元素。 ### 常用子類 1. ArrayList集合,底層是數組結構. 2. LinkedList集合,底層是鏈表結構. ### 方法 #### add(index , element) 將元素插入到列表指定索引上. 索引的插入得按序插入 . ~~~ List<String> list = new ArrayList<String>(); list.add("abc"); list.add("cba"); list.add("123"); Iterator<String> it = list.iterator(); while(it.hasNext()){ System.out.println(it.next()); } ~~~ #### remove(index) 移除指定索引上的元素 ,返回E類型 ,其實就是返回被刪除的元素 . ~~~ List<String> list = new ArrayList<String>(); list.add("abc"); list.add("123"); System.out.println(list.remove(1)); System.out.println(list); ~~~ 結果 ~~~ 123 [abc] ~~~ #### set(index) 修改指定索引上的值 , 并返回修改之前的值 ~~~ List<String> list = new ArrayList<String>(); list.add("abc"); list.add("123"); System.out.println(list.set(1,"cba")); System.out.println(list); ~~~ 結果 ~~~ 123 [abc, cba] ~~~ ### 堆棧: * 先進后出(即,存進去的元素,要在后它后面的元素依次取出后,才能取出該元素)。例如,子彈壓進彈夾,先壓進去的子彈在下面,后壓進去的子彈在上面,當開槍時,先彈出上面的子彈,然后才能彈出下面的子彈。 * 棧的入口、出口的都是棧的頂端位置 . * 壓棧:就是存元素。即,把元素存儲到棧的頂端位置,棧中已有元素依次向棧底方向移動一個位置。 * 彈棧:就是取元素。即,把棧的頂端位置元素取出,棧中已有元素依次向棧頂方向移動一個位置。 ![](https://box.kancloud.cn/f4992677bb4eadf0a11bb6093304b84f_746x702.png) ### 隊列: * 先進先出(即,存進去的元素,要在后它前面的元素依次取出后,才能取出該元素)。例如,安檢。排成一列,每個人依次檢查,只有前面的人全部檢查完畢后,才能排到當前的人進行檢查。 * 隊列的入口、出口各占一側。例如,下圖中的左側為入口,右側為出口。 ![](https://box.kancloud.cn/32dfbce89604fa0e776940f682436d47_806x666.png) ### 數組 * 查找元素快:通過索引,可以快速訪問指定位置的元素 . * 增刪元素慢 : * 指定索引位置增加元素:需要創建一個新數組,將指定新元素存儲在指定索引位置,再把原數組元素根據索引,復制到新數組對應索引的位置 . * 指定索引位置刪除元素:需要創建一個新數組,把原數組元素根據索引,復制到新數組對應索引的位置,原數組中指定索引位置元素不復制到新數組中 . ![](https://box.kancloud.cn/1b62b4bd1f4fc2c07593ddf9935b29e5_776x828.png) ### 鏈表: * 多個節點之間,通過地址進行連接。例如,多個人手拉手,每個人使用自己的右手拉住下個人的左手,依次類推,這樣多個人就連在一起了。 * 查找元素慢:想查找某個元素,需要通過連接的節點,依次向后查找指定元素 . * 增刪元素快: * 增加元素:操作如左圖,只需要修改連接下個元素的地址即可。 * 刪除元素:操作如右圖,只需要修改連接下個元素的地址即可。 ![](https://box.kancloud.cn/e9c8246ca2e3518b05f4d6796c34aee3_842x630.png) 一般數組用的比較多,因為項目中80%的業務都是做查詢,檢索 .
                  <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>

                              哎呀哎呀视频在线观看