posts - 54,  comments - 1,  trackbacks - 0

          JDK中提供的一個操作集合的工具:Collections,提供集對合對象的基本操作.

          • 復制:

          Collections.copy(List des,List src);

          將src中的元素復制到des中,des必須比src大,并且不能為空,否則出錯.des中比src中多的元素將保持不變.

          • 排序:

          static void sort(List elements)

          static void sort(List elements, Comparator c)

          Comparator 是一個排序器,可自定義的排序的方式(升,降)和比較值,如果不加此參數(shù)則按照升序(asc)對簡單集合進行排序:Comparator.compare()對集合中相鄰的兩個元素進行比較,返回負數(shù)升序,正數(shù)降序.0不交換.

          [例子]

          class SortObj {
           
          int i;

           String name;

           
          public SortObj(int i, String name) {
            
          this.i = i;
            
          this.name = name;
           }

          }


          public class SortCollection {
           
          public static void main(String[] args) {
            List list1 
          = new ArrayList();

            list1.add(
          new SortObj(5"name1"));
            list1.add(
          new SortObj(3"name3"));
            list1.add(
          new SortObj(1"name5"));
            list1.add(
          new SortObj(4"name2"));
            list1.add(
          new SortObj(2"name4"));

            System.
          out.println("排序前: ");
            
          for (int i = 0; i < list1.size(); i++{
             SortObj obj 
          = (SortObj) list1.get(i);
             System.
          out.println(obj.i + " " + obj.name);
            }

            Collections.sort(list1, 
          new Comparator() {
             
          public int compare(Object element1, Object element2) {
              SortObj item1 
          = (SortObj) element1;
              SortObj item2 
          = (SortObj) element2;
              
          return item1.name.compareTo(item2.name);
             }

            }
          );
            System.
          out.println("排序后: ");
            
          for (int i = 0; i < list1.size(); i++{
             SortObj obj 
          = (SortObj) list1.get(i);
             System.
          out.println(obj.i + " " + obj.name);
            }


           }

          }


          運行結果:

          排序前:
          5 name1
          3 name3
          1 name5
          4 name2
          2 name4

          排序后:
          5 name1
          4 name2
          3 name3
          2 name4
          1 name5

          • 簡單算法

          static Object min(Collection elements)

          static Object max(Collection elements)

          static Object min(Collection elements, Comparator c)

          static Object max(Collection elements, Comparator c)

          static void copy(List to, List from)

          static void fill(List l, Object value)

          static void replaceAll(List l,Object oldvalue, Object newvalue)

          static int indexOfsubList(List l,List s)

          static int lastingdexOfSubList(List l, List s)

          static void reverse(List l)

          static void rotate(List l, int d)

          posted on 2005-08-22 23:42 ZhuJun 閱讀(223) 評論(0)  編輯  收藏 所屬分類: 開發(fā)手記

          蜀中人氏,躬耕于珠海

          <2005年8月>
          31123456
          78910111213
          14151617181920
          21222324252627
          28293031123
          45678910

          常用鏈接

          留言簿(2)

          隨筆分類(71)

          隨筆檔案(54)

          博客

          文檔

          站點

          論壇

          搜索

          •  

          積分與排名

          • 積分 - 51266
          • 排名 - 974

          最新評論

          閱讀排行榜

          主站蜘蛛池模板: 龙门县| 中西区| 许昌市| 樟树市| 博兴县| 易门县| 突泉县| 南阳市| 雅安市| 晴隆县| 石阡县| 神木县| 垣曲县| 兰溪市| 珲春市| 济南市| 江津市| 虞城县| 桐柏县| 寿宁县| 蓬莱市| 曲沃县| 牟定县| 和政县| 昌都县| 鹤壁市| 澜沧| 巴楚县| 原阳县| 临澧县| 读书| 长沙县| 潞西市| 神池县| 江西省| 郑州市| 汶川县| 岳池县| 富平县| 元江| 舟曲县|