专业网站建设品牌,十四年专业建站经验,服务6000+客户--广州京杭网络
免费热线:400-963-0016      微信咨询  |  联系我们

这个方法比较两个对象的大小啊_java

当前位置:网站建设 > 技术支持
资料来源:网络整理       时间:2023/3/7 1:14:45       共计:3618 浏览

这个方法比较两个对象的大小啊?

谢邀。在java中,如果一个类实现了Comparable接口,我们认为这个类的对象是可以进行比较的。

Comparable接口中的 compareTo方法就是用于提供两个对象比较策略的方法。根据JDK文档,方法产生一个整数作为返回值,当这一整数小于0时,说明调用方小于被调用方,即在自然排序会排在前面;反之,当返回值大于0时,说明调用方大于被调用方。当返回值等于0时,可以认为二者相等(只是在比较时相等,不能严格保证二者是equals的关系)。

这里首先要说题主问题里提到的compareTo的场景是不成立的,因为compareTo方法的调用法是一个引用类型的对象,除包装类外,引用类型对象不能用减号连接,而包装类都是final类型的,无法被继承。一般新建一个类实现Comparable接口时,都是通过比较对象的某一个或多个成员变量来对对象的大小进行比较。

那么假设问题成立的话,x=1, y=2返回-1,表示的是在自然排序中1在2前面,x=2,y=1,返回1,表示的是自然排序中2在1的后面,二者是一致的。

实际上,如果是要自定义排序的规则,一般是在排序中使用Comparator接口,Comparator接口与Comparable类似,接口中包含一个compare方法

即要比较的两个对象都作为参数传入方法中,此时两个参数可以是基本类型的包装类,可以按问题中的方式进行调用。

版权说明:
本网站凡注明“广州京杭 原创”的皆为本站原创文章,如需转载请注明出处!
本网转载皆注明出处,遵循行业规范,如发现作品内容版权或其它问题的,请与我们联系处理!
欢迎扫描右侧微信二维码与我们联系。
·上一条:设计将所有奇数移到所有偶数之前的算法_java | ·下一条:电脑软件怎么通过QQ发送给朋友_java

Copyright © 广州京杭网络科技有限公司 2005-2025 版权所有    粤ICP备16019765号 

广州京杭网络科技有限公司 版权所有