国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

java使用Collection.sort指定升序或降序的三種方法

騫諱護 / 1359人閱讀

摘要:第一種方法,中實現接口需實現接口類升序降序第二種方法,自定義比較器類升序降序第三種,和第二種一樣,不過使用匿名類升序降序

第一種方法,Bean中實現Comparator接口:

public class CollectionsTest {
    public static void main(String[] args) {
        List list = new ArrayList();  
       //BeanClass 需實現Comparable接口
        BeanClass bean1 = new BeanClass();
        BeanClass bean2 = new BeanClass();
        bean1.para = 1;
        bean2.para = 2;
        list.add(bean1;
        list.add(bean2);
        
        Collections.sort(list);
        System.out.println(list.get(0).para);
        System.out.println(list.get(1).para);
    }
}

BeanClass類

public class BeanClass implements Comparable{
    int para;
    public int compareTo(BeanClass bc) {
        // return this.para - bc.para; //升序
        return bc.para-this.para; //降序
    }
}

第二種方法,自定義比較器

public class CollectionsClass {
    public static void main(String[] args) {
        List list = new ArrayList();
        BeanClass bean1 = new BeanClass();
        BeanClass bean2 = new BeanClass();
        bean1.para = 1;
        bean2.para = 2;
        list.add(bean1);
        list.add(bean2);
        
        Collections.sort(list,new MyComparator());
        System.out.println(list.get(0).para);   
        System.out.println(list.get(1).para);   
    }
}

MyComparator類

public class MyComparator implements Comparator{
 
    public int compare(BeanClass bean1, BeanClass bean2) {
        //return bean1.para-bean2.para; //升序
        return bean2.para-bean1.para; //降序
    }
}

第三種,和第二種一樣,不過使用匿名類

public class CollectionsClass {
    public static void main(String[] args) {
        List list = new ArrayList();
        BeanClass bean1 = new BeanClass();
        BeanClass bean2 = new BeanClass();
        bean1.para = 1;
        bean2.para = 2;
        list.add(bean1);
        list.add(bean2);
        
        Collections.sort(list,new Comparator(){
            @Override
            public int compare(BeanClass o1, BeanClass o2) {
                // return o1.para - o2.para;  //升序
                return o2.para - o1.para;  //降序
          ? }
       ?}); 
     System.out.println(list.get(0).para);
    ?System.out.println(list.get(1).para); 
     }
}

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/71663.html

相關文章

  • 前百度面試官整理的——Java后端面試題(二)

    摘要:另外,還可以調用和等很便利的方法,以返回表示字段,方法,以及構造器的對象的數組。運行結果無參構造器有參構造器和實現原理和區別和區別是一個集合接口。 對象的四種引用 強引用只要引用存在,垃圾回收器永遠不會回收 showImg(https://segmentfault.com/img/bVbsYsz?w=652&h=52); 可直接通過obj取得對應的對象 如 obj.equels(new...

    thekingisalwaysluc 評論0 收藏0
  • [Leetcode] Verify Preorder Sequence in Binary Sear

    摘要:如果繼續降序,說明又向左走了,這樣等到下次向右走得時候也要再次更新最小值。這樣,序列無效的條件就是違反了這個最小值的限定。我們同樣可以用本題的方法解,不過是從數組的后面向前面遍歷,因為在后面了。棧的增長方向也是從高向低了。 Verify Preorder Sequence in Binary Search Tree Given an array of numbers, verify ...

    未東興 評論0 收藏0
  • C# 入門算法“冒泡排序“ 升序 降序 最大值 最小值 平均值

    摘要:效果圖冒泡排序冒泡排序是一種排序算法就是把數字小的和數字大的進行位置的調換部分的公司招聘也拿來當做面試題為什么叫冒泡排序冒泡排序就是和水里面產生的氣泡一樣從小到大的慢慢的升起所以就叫冒泡排序完整代碼排序 ...

    不知名網友 評論0 收藏0

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<