java容器學(xué)習(xí)

          ArrayList 讀快 改 慢  (底層數(shù)組實(shí)現(xiàn))

          LinkedList 改快 讀 慢 (鏈表 實(shí)現(xiàn))

          Hash  兩者之間


          重復(fù)是指equals相同就是重復(fù)

          當(dāng)對象當(dāng)作索引的時候(鍵、值):重寫equals方法,必須重寫hashCode方法,保證equals了,要保證hashCode也相同

          Set: 沒有順序,不可以重復(fù)

          List: 有順序,可以重復(fù)

          Map:一個叫鍵,一個值  兩個兩個往里面放的


          Collection方法 舉例子一:

          package com.Collection;

          import java.util.ArrayList;

          import java.util.Collection;

          public class CollectionTest {

              public static void main(String []args){

                 Collection c = new ArrayList();

                 c.add("hello");

                 c.add(new Integer(12));

                 c.add("lsb");

           

                 System.out.println(c.size());

                 System.out.println(c);

           

              }

          }

          顯示結(jié)果:

          3

          [hello, 12, lsb] 

          分析:打印 c  的時候調(diào)用c.toString()方法,顯示的是c中的所有的內(nèi)容并用[]擴(kuò)住


          Collection方法 舉例二: Iterator

          package com.Collection;

          import java.util.Collection;

          import java.util.HashSet;

          import java.util.Iterator;

          public class CollectionTest {

              public static void main(String []args){

                 Collection c = new HashSet();

                 c.add("hello");

                 c.add("abc");

                 c.add("lsb");

                

                 Iterator iter = c.iterator();

                 while(iter.hasNext()){

                     String str = (String)iter.next();

                     System.out.println(str);

                 }

              }

          }

          顯示結(jié)果:

          hello

          lsb

          abc

           

          Collection方法 舉例二: Set方法

          package com.Collection;

          import java.util.Collection;

          import java.util.HashSet;

          import java.util.Iterator;

           

          public class CollectionTest {

              public static void main(String []args){

                 Collection c1 = new HashSet();

                 c1.add("a");

                 c1.add("b");

                 c1.add("c");

           

                 Collection c2 = new HashSet();

                 c2.add("a");

                 c2.add("b");

                 c2.add("d");

                

                 Collection cn = new HashSet(c1);

                 cn.retainAll(c2);  //取兩個集合的交集

                

                 Collection cm = new HashSet(c1);

                 cm.addAll(c2);

                

                 System.out.println(cn);

                 System.out.println(cm);//取兩個集合的并集

              }

          顯示結(jié)果:

          [a, b]

          [d, a, c, b]









          當(dāng)對象要比較大小的時候,那要看該對象是否實(shí)現(xiàn)了Comparable接口,該接口中只有一個

          方法public int compareTo(Object obj);(如果為jdk1.5以上那么參數(shù)為T 泛型),這樣才可以比較大小與排序

           



          MAP



          posted on 2009-04-06 13:36 胡鵬 閱讀(2511) 評論(2)  編輯  收藏 所屬分類: 數(shù)據(jù)結(jié)構(gòu)java基礎(chǔ)

          評論

          # re: java容器學(xué)習(xí) 2009-04-07 07:57 shivaree

          馬大蝦的教程 呵呵、  回復(fù)  更多評論   

          # re: java容器學(xué)習(xí) 2009-04-07 12:15 匿名

          hoho,不錯   回復(fù)  更多評論   

          導(dǎo)航

          <2009年4月>
          2930311234
          567891011
          12131415161718
          19202122232425
          262728293012
          3456789

          統(tǒng)計(jì)

          常用鏈接

          留言簿(3)

          隨筆分類

          隨筆檔案

          agile

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 襄汾县| 通道| 洛隆县| 南漳县| 蕲春县| 博客| 徐闻县| 黄骅市| 姜堰市| 汉川市| 湖口县| 宁陵县| 瑞丽市| 额尔古纳市| 大名县| 陇南市| 天水市| 巴彦淖尔市| 舟山市| 肥乡县| 贞丰县| 来安县| 游戏| 疏附县| 龙山县| 太仆寺旗| 镇宁| 南召县| 嘉黎县| 白山市| 昌都县| 北安市| 雷州市| 专栏| 太湖县| 叙永县| 昌都县| 大荔县| 固阳县| 闸北区| 阿拉善左旗|