氟塑料離心泵www.buybeng.com

          jquery教程http://www.software8.co/wzjs/jquery/

          JAVA基礎(chǔ) 之 List

          概述:

              1.有序的(序號(索引)的序,不是順序的序,相對Set對比產(chǎn)生的說法),可重復(fù)集合

              2.List是Collection的子接口,所以List可以使用Collection全部方法。(見本人博客相關(guān)文章)

              3.除此之外List還有自己特殊的方法,索引相關(guān)的操作(本文重點做這部分的介紹)

              4.刪除的時候防止 躺著中槍   

              5.ListIterator:專門操作list的迭代器(本例未做詳解,有興趣請看api)

              6.兩個基本實現(xiàn)類 ArrayList(非線程安全) 和 Vector(線程安全)

                 1.Vector是一個古老的遺留類(性能差),不推薦使用。

                 2.Vector(Stack) 棧數(shù)據(jù)結(jié)構(gòu),使用LinkedList代替

              7.Arrays.ArrayList是一個長度固定的List,只能遍歷不能 操作

              8.LinkedList

                 1.可以用來做雙端隊列和棧

                 2.由于以鏈表形式保存,所以隨機(jī)訪問性能較差,但是迭代,插入、刪除的性能比較好,因為可以直接改變指針?biāo)傅刂罚〝?shù)據(jù)結(jié)構(gòu)知識)

          Java代碼:  
          1. package com.cxy.collection;  
          2.   
          3. import java.util.ArrayList;  
          4. import java.util.Arrays;  
          5. import java.util.LinkedList;  
          6. import java.util.List;  
          7.   
          8. /** 
          9.  * @author cxy 
          10.  */  
          11. public class ListTest  
          12. {  
          13.     public static void main(String[] args)  
          14.     {  
          15.         List l=new ArrayList();  
          16.         l.add("幼兒園");  
          17.        l.add("小學(xué)");  
          18.         l.add("幼兒園");  
          19.         l.add("中學(xué)");  
          20.         l.add("大學(xué)");  
          21.         System.out.println(l);  //可以看出可以有重復(fù)數(shù)據(jù)  
          22.           
          23.         System.out.println("索引為3的元素是:"+l.get(3));  
          24.           
          25.         System.out.println("幼兒園第一次出現(xiàn)的索引:"+l.indexOf("幼兒園"));  
          26.         System.out.println("幼兒園第最后一次出現(xiàn)的索引:"+l.lastIndexOf("幼兒園"));  
          27.           
          28.         l.set(3"初中");  //類似修改操作   
          29.         l.add(4,"高中");   //插入  
          30.         System.out.println(l);  
          31.           
          32.         l.remove("幼兒園"); //會刪除第一個找到的 幼兒園  
          33.         System.out.println(l);  
          34.         l.remove(new AA()); //由于AA的equals方法返回true,導(dǎo)致第一個元素被誤認(rèn)為是和AA相等的,于是躺著就中槍了  
          35.         System.out.println(l);  
          36.         l.remove(new BB()); //BB的equals方法返回false,所以List沒有找到相等的元素刪除。  
          37.         System.out.println(l);  
          38.         l.remove(0);  //通過序號刪除  
          39.         System.out.println(l);           
          40.         ArrayList l1=new ArrayList();  
          41.         l1.ensureCapacity(64); //大的數(shù)據(jù)集合,使用這個方法一次分配好空間,避免頻繁多次分配,提高性能  
          42.         l1.trimToSize();  //調(diào)整至使用空間大小,避免內(nèi)存浪費。  
          43.           
          44.         try  
          45.         {  
          46.             List temp = Arrays.asList("小學(xué)","中學(xué)","大學(xué)");  
          47.             temp.remove(0);  
          48.         }catch(Exception e)  
          49.         {  
          50.             System.out.println("temp是一個固定長度的list,只能遍歷不能操作");  
          51.         }  
          52.           
          53.         LinkedList ll = new LinkedList();  
          54.         ll.add("aaa");  
          55.         ll.add("bbb");  
          56.         ll.add("ccc");  
          57.         ll.add("ddd");  
          58.         System.out.println("原始:"+ll);  
          59.         ll.addLast("zzz");  //隊列--入隊  
          60.         ll.removeFirst(); //隊列--出隊  
          61.         System.out.println("隊列操作:"+ll);  
          62.         ll.addFirst("kkk"); //棧--入棧  
          63.         System.out.println("kkk入棧:"+ll);  
          64.         ll.removeFirst(); //棧--出棧  
          65.         System.out.println("kkk出棧:"+ll);  
          66.         ll.removeLast();  //體現(xiàn)雙端隊列  
          67.         System.out.println("=========================");  
          68.         ll = new LinkedList();  
          69.         ll.add("aaa");  
          70.         ll.add("bbb");  
          71.         ll.add("ccc");  
          72.         ll.add("ddd");  
          73.         System.out.println("重新初始化:"+ll);  
          74.         ll.push("kkk");  //棧--入棧  
          75.         System.out.println("kkk入棧:"+ll);  
          76.         ll.pop();  //棧--出棧  
          77.         System.out.println("kkk出棧:"+ll);  
          78.           
          79.         ll.offer(""); //隊列--入隊  
          80.         ll.offerFirst("");  //返回true的addFirst  
          81.         ll.offerLast("");  //返回true的addLast  
          82.           
          83.         ll.poll(); //獲取并刪除第一個  
          84.         ll.pollFirst();  //獲取并刪除第一個  
          85.        ll.pollLast();  //獲取并刪除最后一個  
          86.           
          87.         ll.peekFirst(); //獲取不刪除第一個  
          88.         ll.peekLast();  //獲取不刪除最后一個  
          89.           
          90.         ll.removeFirstOccurrence("aaa"); //刪除第一個出現(xiàn)的aaa  
          91.         ll.removeLastOccurrence("aaa"); //刪除最后一個出現(xiàn)的aaa  
          92.     }  
          93. }  
          94.   
          95.   
          96. class AA  
          97. {  
          98.     @Override  
          99.     public boolean equals(Object obj)  
          100.     {  
          101.         return true;  
          102.     }  
          103. }  
          104.   
          105. class BB  
          106. {  
          107.     @Override  
          108.     public boolean equals(Object obj)  
          109.     {  
          110.         return false;  
          111.     }  
          112. }  

          擴(kuò)展閱讀:JAVA基礎(chǔ) 之 Set     JAVA基礎(chǔ) 之 Collections

          posted on 2013-02-24 16:43 你爸是李剛 閱讀(1440) 評論(0)  編輯  收藏


          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導(dǎo)航:
           
          <2013年2月>
          272829303112
          3456789
          10111213141516
          17181920212223
          242526272812
          3456789

          導(dǎo)航

          統(tǒng)計

          常用鏈接

          留言簿

          隨筆檔案

          文章檔案

          技術(shù)網(wǎng)站

          行業(yè)網(wǎng)站

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          站長網(wǎng) 氟塑料離心泵 注塑機(jī) 液晶廣告機(jī)
          主站蜘蛛池模板: 盘山县| 石河子市| 肥东县| 乌拉特后旗| 精河县| 蚌埠市| 西盟| 新晃| 金阳县| 清河县| 怀远县| 太和县| 南丹县| 中江县| 西林县| 左云县| 龙门县| 泸定县| 曲阜市| 于都县| 扬州市| 库伦旗| 凌海市| 连山| 平顶山市| 宜黄县| 尼勒克县| 理塘县| 阿拉善盟| 陇西县| 鹤岗市| 水城县| 深泽县| 河池市| 沁源县| 敖汉旗| 阿尔山市| 铜陵市| 开化县| 鹰潭市| 汝南县|