java lisi亂序、排序

沒落孤鴻 9年前發布 | 6K 次閱讀 Java

package com.gcj.test;

import java.text.ParseException; import java.util.ArrayList; import java.util.Arrays; import java.util.Collections; import java.util.Comparator; import java.util.List;

/**

  • 排序Test
  • @author youps-a
  • @version $Id: Test.java, v 0.1 2015年5月22日 下午8:04:45 youps-a Exp $ */ public class Test {

    @SuppressWarnings({ "unchecked", "rawtypes" }) public static void main(String[] args) throws ParseException {

     /**排序方法簡單使用*/
     List list = Arrays.asList(1,2,3,4,5,6,7,8,9);   //定義個list
     System.out.println("原  順  序"+list.toString());
    
     Collections.shuffle(list);  
     System.out.println("打亂順序"+list.toString());
    
     Collections.sort(list);
     System.out.println("正序排列"+list.toString());
    
     Collections.sort(list, Collections.reverseOrder());
     System.out.println("逆序排列"+list.toString());
    
     /**排序方法復雜使用*/
     List<TestBean> testList = new ArrayList<TestBean>();
     for (int i = 0; i < 10; i++) {
         TestBean testBean = new TestBean();
         testBean.setId(i);
         testBean.setName("name"+i);
         testList.add(testBean);
     }
     //定義一個TestBean 類型的list 并打亂進行測試
     Collections.shuffle(testList);  
     for (int i = 0; i < testList.size(); i++) {
         System.out.println("testList亂序  "+testList.get(i).toString());
     }
     System.out.println();
     //根據TestBean 的 id 屬性進行排序,需重載實現
     Collections.sort(testList, new Comparator<TestBean>() {
         @Override
         public int compare(TestBean o1, TestBean o2) {
             // 實現正序排列
             return o1.getId().compareTo(o2.getId());
         }
     });
     for (int i = 0; i < testList.size(); i++) {
         System.out.println("testList正序  "+testList.get(i).toString());
     }
     System.out.println();
     //再次打亂順序
     Collections.shuffle(testList);  
     //依舊重載方法
     Collections.sort(testList, new Comparator<TestBean>() {
         @Override
         public int compare(TestBean o1, TestBean o2) {
             // 實現倒序排列
             return o2.getId().compareTo(o1.getId());
         }
     });
     for (int i = 0; i < testList.size(); i++) {
         System.out.println("testList倒序  "+testList.get(i).toString());
     }
    
    

    }

} //測試bean class TestBean { //注意需使用 Integer 或Long 等包裝類型 private Integer id; private String name; public Integer getId() { return id; } public void setId(Integer id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } @Override public String toString() { // TODO Auto-generated method stub return "id:"+this.getId()+",name:"+this.getName(); } }

</pre>

 本文由用戶 沒落孤鴻 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!