学习effective java-12对所有对象共同的方法之考虑实现Comparable

来源:互联网 发布:阿里云备案买服务器 编辑:程序博客网 时间:2024/05/28 16:15
 该知识点是自己从书籍中学习的笔记。

      先说明compareTo方法并不包含在Object中,它是Comparable接口中唯一的一个方法。该方法和Object的equals有很多相似之处。

      实现Comparable可以帮助我们很快的查询到想要的值、提高运算效率等等好处。具体好处可以需要根据业务而定。

     对于对象中的数据类型是引用类型进行比较的话,则需要引用调用compareTo()来进行比较,如String;如果是原始类型的话,仅仅需要>、=、<就可以了,但是其中对于浮点型数据的话,需要使用Double.compare 或者Float.compare。

public final class CaseInsensitiveString implements Comparable<CaseInsensitiveString> {

public int compareTo(CaseInsensitiveString cis) {

return String.CASE_INSENSITIVE_ORDER.compare(s, cis.s);

}

... // Remainder omitted

}

       在重写compareTo方法的时候,你可以优先将最可能比较的数据属性放到第一位,然后再比较其他的。记住在比较时候,返回的仅仅是数字的符号,并不是大小,当然使用这个就需要小心。

原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 罚金太多交不起怎么办 判决书上的罚金怎么办 刑事罚款不交怎么办 缎面的鞋脏了怎么办 夏天脸上长粉刺怎么办 鬃狮不吃东西怎么办 买二手车的车牌怎么办 榴莲打开了肉没熟怎么办 gmat的prep做完怎么办 电脑没ip地址怎么办 电脑ip地址缺失怎么办 cos还原不了人物怎么办 执行局抓人十五天不放人怎么办 笔记本电脑键盘按键错乱怎么办 靠墙倒立上不去怎么办 医院多收钱了怎么办 学生总是转笔怎么办 吃错东西呕吐怎么办 手腕筋扭伤了怎么办 右膝盖内侧疼痛怎么办 膝盖关节腔积液怎么办 小孩玩游戏花钱怎么办 初三玩手机上瘾怎么办 无线网有感叹号怎么办 台式电脑网络感叹号怎么办 忘记发红包密码怎么办 电信诈骗被骗后怎么办 C小孩讨厌上学怎么办 军训来大姨妈怎么办 夏天军训来月经怎么办 军训遇到大姨妈怎么办 长春市图书馆读者证怎么办 济宁图书馆怎么办读者卡 海南省图书馆读者证怎么办 小孩子特别能吃怎么办 小孩吃不下去药怎么办 小孩不肯去上学怎么办 初中没有团员证怎么办 入团申请书丢了怎么办 刚成立单位社保怎么办 老年人耳鸣怎么办小妙招