黄色网址大全免费-黄色网址你懂得-黄色网址你懂的-黄色网址有那些-免费超爽视频-免费大片黄国产在线观看

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動力節點LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 學習攻略 Java中TreeSet的三種比較方法

Java中TreeSet的三種比較方法

更新時間:2019-09-01 09:00:00 來源:動力節點 瀏覽3715次

 

今天動力節點java培訓機構小編為大家分享“Java中TreeSet的三種比較方法”,希望能夠幫助到大家,下面就隨小編一起看看Java中TreeSet的三種比較方法都是什么?


  1、讓元素具備比較性


  元素自身具備比較性,需要元素實現Comparable接口,重寫compareTo方法,也就是讓元素自身具備比較性,這種方式叫做元素的自然排序也就做默認排序


// 第一種比較方法

public class Student implements Comparable{

//public class Student{

    

    private String name;

    private int age;

    @Override

    public int compareTo(Object o) {

                if(!(o instanceof Student))

                        throw new RuntimeException("不是學生對象");

                Student s = (Student) o;

                int differenceValue = this.age - s.age;

                if(differenceValue == 0) return this.name.compareTo(s.name);

        return differenceValue;

    }   

}




  2、寫一個類來實現Comparator接口


  當元素自身不具備比較性,或者自身具備的比較性不是所需要的。那么此時可以讓容器自身具備。需要定義一個類實現接口Comparator,重寫compare方法,并將該接口的子類實例對象作為參數傳遞給TreeMap集合的構造方法。


import java.util.Comparator;


// 第二種比較方法

public class ComparatorLean implements Comparator{


    @Override

    public int compare(Object o1, Object o2) {

                Student s1 = (Student) o1;

                Student s2 = (Student) o2;

                int differenceValue = this.age - s.age;

                if(differenceValue == 0) return new Integer(s1.getName().compareTo(s2.getName()));

        return differenceValue;

    }

}

TreeSettreeSet = new TreeSet<>(new ComparatorLean());


注意:當Comparable比較方式和Comparator比較方式同時存在時,以Comparator的比較方式為主;在重寫compareTo或者compare方法時,必須要明確比較的主要條件相等時要比較次要條件,



  3、第三種為匿名內部類方法


TreeSettreeSet = new TreeSet(new Comparator() {

    @Override

    public int compare(Object o1, Object o2) {

        Student s1 = (Student) o1;

        Student s2 = (Student) o2;

        int num = s1.getAge() - s2.getAge();

        if(num==0) return s1.getAge() - s2.getAge();

        return num;

    }

});


以上就是動力節點java培訓機構小編介紹的“Java中TreeSet的三種比較方法”的內容,希望通過此文能夠幫助到大家,如有疑問,請在線咨詢,有專業老師隨時為你服務。


相關免費視頻教程推薦


java TreeSet特點視頻教程下載: http://www.ilovecolors.com.cn/xiazai/2508.html


提交申請后,顧問老師會電話與您溝通安排學習

免費課程推薦 >>
技術文檔推薦 >>
主站蜘蛛池模板: 欧美视频免费播放 | 日韩精品一区二区三区高清 | 日韩欧美一区在线观看 | 中文字幕一区二区三区精彩视频 | 国产a v高清一区二区三区 | 欧美色图亚洲 | 欧美笫一页 | 天天操天天干天天操 | 亚洲日本韩国欧美 | 天天操天天摸天天碰 | 欧美福利在线 | 在线看成人片 | 天天在线欧美精品免费看 | 天天操天天做 | 国产精品成人观看视频免费 | 丝袜视频在线 | 九九影院韩国理伦片 | 国产麻豆精品一区二区 | 在线观看成年人网站 | 99九九| 日韩欧美区 | 天天上天天干 | 一级毛片一级毛片一级毛片aa | 成人免费视频在线看 | 国产免费观看嫩草影院 | 美女网站18 | 日韩在线视频在线 | 亚洲狠狠97婷婷综合久久久久 | 亚洲无线码在线一区观看 | 伊人日日夜夜 | 国产福利麻豆精品一区 | 欧美高清国产在线观看 | 日韩一级黄色毛片 | 一级特黄特黄的大片免费 | 天天爱天天做色综合 | 万部在线视频免费观看 | 成人精品视频一区二区三区尤物 | pornh日本xxxxhd | 国产精品日韩在线观看 | 国产一级片免费视频 | 黄网站免费视频 |