<delect id="sj01t"></delect>
  1. <em id="sj01t"><label id="sj01t"></label></em>
  2. <div id="sj01t"></div>
    1. <em id="sj01t"></em>

            <div id="sj01t"></div>
            java語言

            java list的用法詳解

            時間:2025-01-23 19:52:59 java語言 我要投稿
            • 相關推薦

            java list的用法詳解

              java中可變數組的原理就是不斷的創建新的數組,將原數組加到新的數組中。以下是百分網小編搜索整理的關于java list的用法詳解,需要的朋友可以參考一下!想了解更多相關信息請持續關注我們應屆畢業生考試網!

              |--List:元素是有序的(怎么存的就怎么取出來,順序不會亂),元素可以重復(角標1上有個3,角標2上也可以有個3)因為該集合體系有索引,

              |-- ArrayList:底層的數據結構使用的是數組結構(數組長度是可變的百分之五十延長)(特點是查詢很快,但增刪較慢)線程不同步

              |-- LinkedList:底層的數據結構是鏈表結構(特點是查詢較慢,增刪較快)

              |-- Vector:底層是數組數據結構 線程同步(數組長度是可變的百分之百延長)(無論查詢還是增刪都很慢,被ArrayList替代了)

              List:特有的方法,凡是可以操作角標的方法都是該體系特有的方法

              增

              代碼如下:

              boolean add(int index, E element)

              boolean addAll(index,Collection)

              代碼如下:

              public static void List_add(){

              ArrayList a1 = new ArrayList();

              a1.add("java");

              a1.add("php");//List集合中的元素可以重復

              a1.add(".net");

              System.out.println("原集合:"+a1);

              a1.add(1, "Flash");

              a1.add(0, "ps");

              System.out.println(a1);

              ArrayList a2 = new ArrayList();

              a2.add("javascript");

              a2.add("3dMax");

              a2.add("IBM");

              a1.addAll(0, a2);

              System.out.println(a1);

              }

              刪除指定位置的元素

              代碼如下:

              boolean remove(int index)

              代碼如下:

              public static void List_remove(){

              ArrayList a1 = new ArrayList();

              a1.add("javascript");

              a1.add("php");

              a1.add("flash");

              System.out.println("原集合:"+a1);

              a1.remove(0);

              System.out.println(a1);

              }

              修改指定角標的元素  set(int index, E element)  返回的是修改的那個元素

              代碼如下:

              public static void List_set() {

              ArrayList a1 = new ArrayList();

              a1.add("javascript");

              a1.add("php");

              a1.add(".net");

              System.out.println("原集合:"+a1);

              a1.set(1, "falsh");

              System.out.println(a1);

              }

              

              代碼如下:

              get(int index)   返回列表中指定位置的元素

              subList(int fromIndex, int toIndex)    返回列表中指定的 fromIndex(包括 )和 toIndex(不包括)之間的部分元素。

              代碼如下:

              public static void List_get() {

              ArrayList a1 = new ArrayList();

              a1.add("java");

              a1.add("php");

              a1.add("flash");

              System.out.println(a1.get(0));//獲取指定角標的元素,有了該方法就可以遍歷該集合中的所有元素

              System.out.println(a1.subList(1, 3));//獲取集合中某一部分的元素,包含頭不包含尾

              }

              List集合特有的迭代器:ListIterator(是Iterator的子接口)

              注意:

              在迭代時,是不可以通過集合對象的方法操作集合中的元素

              因為會發生ConcurrentModificationException異常(并發異常)

              所以,在迭代器時,只能用迭代器的方法造作元素

              因為Iterator方法是有限的所以只能對元素進行判斷,取出,刪除的操作

              如果想要其他的操作如添加,修改等,就需要使用其子接口,ListIterator

              該接口只能通過List集合的listIterator方法獲取

              代碼如下:

              public class ListIteratorDemo {

              public static void main(String[] args) {

              ArrayList a1 = new ArrayList();

              a1.add("java01");

              a1.add("java02");

              a1.add("java03");

              a1.add("java04");

              System.out.println("原集合是:"+a1);

              /*在迭代過程中準備添加或者刪除元素

              Iterator it = al.iterator();

              while (it.hasNext()){

              Object obj = it.next();

              if (obj.equals("java02"))

              //al.add("java008");//會出現并發異常,因為迭代器正在操作集合,不能再用集合的方法操作集合了

              it.remove();//將java02的引用從集合中刪除了

              System.out.println("obj:"+obj);

              }

              */

              //只有List的listIterator有增,刪,改,查這些功能,因為只有List有索引

              ListIterator li = a1.listIterator();

              while (li.hasNext()){

              if(li.next().equals("java02"))

              //li.add("java009");

              li.set("java006");

              }

              }

              }

              Vector:枚舉就是Vector特有的取出方式,跟迭代器很像(其實枚舉和迭代是一樣的) 已經被迭代器取代

              代碼如下:

              public class VectorDemo {

              public static void main(String[] args) {

              Vector v = new Vector();

              v.add("java01");

              v.add("java02");

              v.add("java03");

              v.add("java04");

              for(Enumeration en = v.elements();en.hasMoreElements();){

              System.out.println(en.nextElement());

              }

              }

              }

              LinkedList:

              特有方法:

              addFirst();在頭部添加元素      addLast();在尾部添加元素

              getFirst(); getLast(); 獲取元素但不刪除元素。如果集合中沒有元素,會出現NoSuchElementException

              removeFirst();   removeLast(); 獲取元素但是刪除元素。如果集合中沒有元素,會出現NoSuchElementException

              在JDK1.6出現了替代方法

              offerFirst(); offerLast();

              peekFirst(); peekLast(); 獲取元素,但是元素不被刪除。如果集合中沒有元素,會返回null

              pollFirst(); pollLast(); 獲取元素,但是元素被刪除。如果集合中沒有元素,會返回null

              代碼如下:

              public class LinkedListDemo {

              public static void main(String[] args) {

              LinkedList link = new LinkedList();

              link.add("java01");

              link.add("java02");

              link.add("java03");

              link.add("java04");

              while(!link.isEmpty()){

              System.out.println((link.removeLast()));

              }

              }

              }


            【java list的用法詳解】相關文章:

            PHP中list方法用法示例10-13

            C語言for語句用法詳解10-30

            英語代詞的幾種用法詳解07-12

            C語言指針用法詳解08-21

            java回調函數詳解11-02

            常用Java排序算法詳解09-17

            Java不可變類型的詳解09-10

            Java中Class對象詳解09-03

            JAVA中toString方法詳解11-03

            <delect id="sj01t"></delect>
            1. <em id="sj01t"><label id="sj01t"></label></em>
            2. <div id="sj01t"></div>
              1. <em id="sj01t"></em>

                      <div id="sj01t"></div>
                      黄色视频在线观看