<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      ArrayList和linkedlist的add方法

      ArrayList和linkedlist的add方法

      • ArrayList和linkedlist都繼承Collection和List接口.

      Arraylist

      • transient Object[] elementData; // non-private to simplify nested class access(非私有以簡化嵌套類訪問)
      public boolean add(E e) {
              ensureCapacityInternal(size + 1);  
              elementData[size++] = e;
              return true;
          }

      add方法,總是返回true。
      用數(shù)組elementData來保存,在此數(shù)組中保存至最后。

      • 圖解 add
        enter description here
        就是ArrayList里面的elementData數(shù)組里面最后一個元素后面進行添加一個。

      LinkList

      public boolean add(E e) {
              linkLast(e);
              return true;
          }

      也總是返回true。在linkLast中實現(xiàn)的是鏈表
      List內部實現(xiàn)的雙鏈表,lsat是最末位的元素,linkLast把元素連接到末位。

      /**
           * Links e as last element.鏈接e作為最后一個元素。
           */
          void linkLast(E e) {
              final Node<E> l = last;
              final Node<E> newNode = new Node<>(l, e, null);
              last = newNode;
              if (l == null)
                  first = newNode;
              else
                  l.next = newNode;
              size++;
              modCount++;
          }
      • 圖解
        源碼用的是尾插法:
        插入前:
        enter description here
        插入后:
        enter description here
        這是Node表(類)
      private static class Node<E> {
              E item;
              Node<E> next;
              Node<E> prev;
      
              Node(Node<E> prev, E element, Node<E> next) {
                  this.item = element;
                  this.next = next;
                  this.prev = prev;
              }
          }

      源碼尾插法解釋:

      • 尾插法,就是在鏈表最末位添加表。
      • final Node l = last; 創(chuàng)建l 等于 鏈表中最后一個表last指向的位置。
      • final Node newNode = new Node<>(l, e, null); 創(chuàng)建新的表,上一個指向l,元素為e,因為是末位,所以下個是空
      • last = newNode; 此時last應該是新建的newNode了
      • if (l == null) 判斷是不是空鏈表,
        first = newNode; 空鏈表,表頭first也指向newNode
        else
      • l.next = newNode; l是開始保存last的位置,l.next與newNode鏈接起來,此時,鏈表是一個完整的鏈表。

      posted on 2020-05-27 16:09  寄居の友人c  閱讀(1686)  評論(0)    收藏  舉報

      主站蜘蛛池模板: 日韩丝袜亚洲国产欧美一区| 午夜男女爽爽影院免费视频下载| 天天狠天天透天天伊人| 国产精品理论片在线观看| 安岳县| 99久久成人亚洲精品观看| 2019亚洲午夜无码天堂| 亚洲精品天堂在线观看| 狠狠干| 少妇午夜福利一区二区三区| 99在线精品国自产拍中文字幕| 国产精品v欧美精品∨日韩| 免费无码又爽又刺激网站直播| 最近中文字幕免费手机版| 亚洲一区中文字幕人妻| 上司的丰满人妻中文字幕| 女人香蕉久久毛毛片精品| 色爱综合另类图片av| 亚洲av久久精品狠狠爱av| 人妻系列无码专区免费| 国产微拍一区二区三区四区| 又大又黄又粗高潮免费| 财经| 日本一区二区三本视频在线观看| 一二三四免费中文字幕| 包头市| 国产成人高清亚洲一区二区| 深夜福利资源在线观看| 熟女人妻视频| 成人网站免费观看永久视频下载| 91午夜福利在线观看精品| 九九热免费精品视频在线| 久久精品国产蜜臀av| 色悠久久网国产精品99| 国产特色一区二区三区视频| 开心婷婷五月激情综合社区 | a∨变态另类天堂无码专区| 欧洲美熟女乱又伦免费视频 | 使劲快高潮了国语对白在线| 综合激情网一区二区三区| 国产精品午夜福利资源|