三九宝宝网宝宝教育学龄段教育

两种比较方法的区别

12月22日 编辑 39baobao.com

[一般地基加固方法有哪些]常见的地基基础缺陷和处理因素 当前的地基基础缺陷处理中,需要注意的因素有以下几个方面:首先, 在地基缺陷处理中对于要结合建筑物上部结构的整体性、安全性和质量要 求进行综...+阅读

从Java文档看,着两个接口其实质上都是对一个序关系的完备定义。也就是说一个Comparable.compareTo(T)方法,仅从逻辑上说而不考虑该方法的归属问题,可以等价的用一个Comparator.compare(T,T)表示,反之亦然。

但是在考虑了对象归属性,这是有区别的。为免拗口,下以例说7a686964616fe78988e69d8331333234323033:

比如定义“人”为一个类。那么他的compareTo方法可以定义为体重比较,也可以定义为身高比较,甚至身高和体重加权总分比较,但不管怎样,只能决定一种序关系。如果我们有时候要比较身高,有时候要比较体重,就不免要写compareTo_Weight() compareTo_Height()两种方法以备不时,但是这个类实现comparable接口后只有一个compareTo接口方法,无法既表示compareTo_Weight又表示compareTo_Height。

那么解决的方法就是用Comparator,我们完全可以实现两个都是实现了Cmoparator的类Comparator_Height和Comparator_Weight。这时它们各自的compareTo方法分别扮演了compareTo_Weight和compareTo_Height。对于着两个类实例的管理,我们可以有很多方案,其中可以采用composition机制把这两个comparaotor作为class人的两个成员对象。甚至可以通过lookup的机制来切换选择这两种comparator,这样class人又具有了两种比较的方法,比起直接实现compareTo_Weight/compareTo_Height又在多态性上具有优势。当然当然,你可以说我用reflection一样可以实现多态,其实反射在我看来,逻辑上就有点把方法作为独立对象来对待的意思,就像在javascript语言里那样,所以思想上还是一致的。

这种思想就有点包含了关系数据库的思想,关系本身是一种对象(即数据库中抽象成一张独立的关系表),而不需要紧耦合于形成这个二元关系的实体。而且同样的元实体之间,可以存在多种关系(多张关系表)。如果从集合论的语言去归纳这个问题将会更简洁。

当然以上不是说Comparable.compareTo(T)没用或不好,简而言之,Comparable.compareTo是只需要实现一种关系的时候对Comparator.compare(T, T)的一种简单实现,可以说是特例和范型的关系。

以下为关联文档:

比较有创意的主题班会高三(八)班主题班会:超越梦想 背景: 进入高三,经过一段时间和学生的交流,发现很多学生无论是在学习上还是心理上都存有很多的困惑.有些学生在学习上很被动,有些学生在心理上给自己...

如何培养学生的数学思维方法著名教育家赞可夫指出: “在各科教学中要始终注意发展学生的逻辑思维, 培养学生思维的灵活性和创造性。”数学思维的培养是数学教学的灵魂,学生思维的发展是数学教学的核心。可...

中学语文教学研究制订计划有效预习属于语文学习过程的什么方法学好语文,最基本的要跟着老师走,掌握老师要求的知识点。同时,学习要有计划,计划主要是为了提高学习的有效性,同时也有利于要成一个好的学习习惯。如果写作能力差,就一周写一篇作文...

纯鲜牛奶的防腐方法※nbsp;个人恐怕没有办法检验,只有到专门的检测部门去检测nbsp;保质期长且能在常温下保存的牛奶,在加工过程中必须全面灭菌,可能还需加入稳定剂、防腐剂之类.nbsp;下面下载了一篇...

航次租船合同定期租船合同光船租船合同比较这三种合同关系三种合同承租人的义务如果要详解,还是要根据海商法好好地去理解,在这里我只能简单概括回答一下 航次租船合同实际上就是承运人承担大部分费用,然后收取运费,所以承租人主要义务...

如何培养比较有种让人看了眼神就决的这个人很有气质的样子总而一。多锻炼自己的身体。精力充沛了,眼神才会显得灵活。 二。多看书,多思考。学识丰富了,遇到问题的时候就会胸有成竹了。眼神就会很深沉。 三。多做事,还是多思考。经历多了,遇到...

篮球运动中防守的手段与方法最好是贴身防守,抢一步在前面 需要完成连进攻球员内线接球的机会都少的贴身防守,是对于防守球员心理的考验。防守球员绝对要有牺牲个人的技术统计的准备,比赛中无论对位球员处...

语法分析最常用的两类方法LL分析法和LR分析法。 1、自上而下语法分析方法(LL分析法) 给定文法G和源程序串r。从G的开始符号S出发,通过反复使用产生式对句型中的非终结符进行替换(推导),逐步推导出r 。 是一...

比较适合国内企业的品牌营销策略有哪些对于品牌营销策略而言,没有什么是完全适合的,每个行业、每个企业的情况都不一样,就算是同一个企业,在不同的发展阶段所能用的策略也都不一样,更没有那些营销策略是专门适合国内企...

推荐阅读
图文推荐