隨筆-9  評論-2  文章-0  trackbacks-0
          main方法:
          public class Test {

              
          public static void main(String[] args) {
                  
          /**
                   * 
                   * sort()方法詳解
                   * 1.Collections.sort(List<T> list) 
                   *         根據(jù)元素的自然順序 對指定列表按升序進行排序。
                   * 2.Collections.sort(List<T> list, Comparator<? super T> c) 
                   *         根據(jù)指定比較器產生的順序對指定列表進行排序。
                   * 
                   
          */
                  List
          <Integer> list = new ArrayList<Integer>();
                  list.add(
          3);
                  list.add(
          1);
                  list.add(
          2);
                  
          //自然順序
                  Collections.sort(list);
                  
          for(Integer i:list){
                      System.out.println(i);
                  }
                  
                  System.out.println(
          "===============================================");
                  
                  Point point2 
          = new Point(2,2,2);
                  Point point1 
          = new Point(1,1,1);
                  Point point3 
          = new Point(3,1,2);
                  
                  List
          <Point> points = new ArrayList<Point>();
                  points.add(point2);
                  points.add(point1);
                  points.add(point3);
                  
                  System.out.println(
          "===============================================");
                  
          //根據(jù)point中的升序輸出
                  Collections.sort(points, new SortByXdesc());
                  
          for(Point point:points){
                      System.out.println(
          "x:"+point.getX()+" y:"+point.getY()+" z:"+point.getZ());
                  }
                  
                  System.out.println(
          "===============================================");
                  
          //根據(jù)point中的x降序輸出
                  Collections.sort(points, new SortByXasc());
                  
          for(Point point:points){
                      System.out.println(
          "x:"+point.getX()+" y:"+point.getY()+" z:"+point.getZ());
                  }
              }

          }

          降序輸出類SortByXdesc:

          public class SortByXdesc implements Comparator<Object> {

              
          //根據(jù)point中的x降序輸出
              @Override
              
          public int compare(Object o1, Object o2) {
                  Point point1 
          =(Point)o1;
                  Point point2 
          =(Point)o2;
                  
          if(point1.getX()>point2.getX()){
                      
          return 1;
                  }
          else{
                      
          return 0;
                  }
              }

          }

          升序輸出類SortByXasc:

          public class SortByXasc implements Comparator<Object> {

              
          //根據(jù)point中的x升序輸出
              @Override
              
          public int compare(Object o1, Object o2) {
                  Point point1 
          =(Point)o1;
                  Point point2 
          =(Point)o2;
                  
          if(point1.getX()>point2.getX()){
                      
          return 0;
                  }
          else{
                      
          return 1;
                  }
              }
          }

          posted on 2011-06-22 16:03 secret_x15 閱讀(6491) 評論(1)  編輯  收藏 所屬分類: java

          評論:
          # re: sort()排序 collections.sort(); 2011-12-03 12:04 | think
          靠,你寫反了,=1或者是正數(shù)才是升序,你咋 弄成降序了呢  回復  更多評論
            
          主站蜘蛛池模板: 通江县| 龙门县| 泽库县| 房山区| 荥阳市| 龙胜| 通辽市| 阿坝| 锦屏县| 海门市| 正阳县| 博客| 桓仁| 手机| 称多县| 浠水县| 思茅市| 榆林市| 土默特左旗| 莱州市| 灵璧县| 七台河市| 承德县| 阿图什市| 竹山县| 原平市| 美姑县| 连云港市| 阿合奇县| 长岛县| 简阳市| 清原| 江西省| 西昌市| 阳原县| 大庆市| 洪江市| 黄冈市| 樟树市| 莱阳市| 灌云县|