<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之旅 廣告
                ## [鏈表LinkedList](https://lingcoder.gitee.io/onjava8/#/book/12-Collections?id=%e9%93%be%e8%a1%a8linkedlist) **LinkedList**也像**ArrayList**一樣實現了基本的**List**接口,但它在**List**中間執行插入和刪除操作時比**ArrayList**更高效。然而,它在隨機訪問操作效率方面卻要遜色一些。 **LinkedList 還添加了一些方法,使其可以被用作棧、隊列或雙端隊列(deque)**。在這些方法中,有些彼此之間可能只是名稱有些差異,或者只存在些許差異,以使得這些名字在特定用法的上下文環境中更加適用(特別是在**Queue**中)。例如: * `getFirst()`和`element()`是相同的,它們都返回列表的頭部(第一個元素)而并不刪除它,如果**List**為空,則拋出**NoSuchElementException**異常。`peek()`方法與這兩個方法只是稍有差異,它在列表為空時返回**null**。 * `removeFirst()`和`remove()`也是相同的,它們刪除并返回列表的頭部元素,并在列表為空時拋出**NoSuchElementException**異常。`poll()`稍有差異,它在列表為空時返回**null**。 * `addFirst()`在列表的開頭插入一個元素。 * `offer()`與`add()`和`addLast()`相同。 它們都在列表的尾部(末尾)添加一個元素。 * `removeLast()`刪除并返回列表的最后一個元素。 下面的示例展示了這些功能之間基本的相似性和差異性。它并不是重復執行**ListFeatures.java**中所示的行為: ~~~ // collections/LinkedListFeatures.java import typeinfo.pets.*; import java.util.*; public class LinkedListFeatures { public static void main(String[] args) { LinkedList<Pet> pets = new LinkedList<>(Pets.list(5)); System.out.println(pets); // Identical: System.out.println( "pets.getFirst(): " + pets.getFirst()); System.out.println( "pets.element(): " + pets.element()); // Only differs in empty-list behavior: System.out.println("pets.peek(): " + pets.peek()); // Identical; remove and return the first element: System.out.println( "pets.remove(): " + pets.remove()); System.out.println( "pets.removeFirst(): " + pets.removeFirst()); // Only differs in empty-list behavior: System.out.println("pets.poll(): " + pets.poll()); System.out.println(pets); pets.addFirst(new Rat()); System.out.println("After addFirst(): " + pets); pets.offer(Pets.get()); System.out.println("After offer(): " + pets); pets.add(Pets.get()); System.out.println("After add(): " + pets); pets.addLast(new Hamster()); System.out.println("After addLast(): " + pets); System.out.println( "pets.removeLast(): " + pets.removeLast()); } } /* Output: [Rat, Manx, Cymric, Mutt, Pug] pets.getFirst(): Rat pets.element(): Rat pets.peek(): Rat pets.remove(): Rat pets.removeFirst(): Manx pets.poll(): Cymric [Mutt, Pug] After addFirst(): [Rat, Mutt, Pug] After offer(): [Rat, Mutt, Pug, Cymric] After add(): [Rat, Mutt, Pug, Cymric, Pug] After addLast(): [Rat, Mutt, Pug, Cymric, Pug, Hamster] pets.removeLast(): Hamster */ ~~~ `Pets.list()`的結果被傳遞給**LinkedList**的構造器,以便使用它來填充**LinkedList**。如果查看**Queue**接口就會發現,它在**LinkedList**的基礎上添加了`element()`,`offer()`,`peek()`,`poll()`和`remove()`方法,以使其可以成為一個**Queue**的實現。**Queue**的完整示例將在本章稍后給出。
                  <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>

                              哎呀哎呀视频在线观看