Java 比较接口comparable与comparator区别解析
这篇文章主要介绍了Java 比较接口comparable与comparator区别解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
package test0; import java.util.Comparator; //限定修饰符为friend不能为public,一个java文件中只能有一个public类 /*** * java程序是从一个public类的main函数开始执行的, *(其实是main线程),就像c程序是从main()函数开始执行一样。 * 只能有一个public类是为了给类装载器提供方便。 */ interface MyComparable<T>{ //接口类--抽象类 public int compare(T agr0); //抽象方法--在子类中实现 } class student implements Comparable<student> { private String name="zhang"; private int num=12; @Override public String toString() { return "名字为:" + name +","+ "学号为:" + num; } @Override public int compareTo(student arg0) { return this.num-arg0.num; } } class teacher implements Comparator<student> { private String name="zhang"; private int num=12; @Override public String toString() { return "名字为:" + name +","+ "学号为:" + num; } @Override public int compare(student arg0, student arg1) { // TODO Auto-generated method stub return 0; } } public class Test { public static void main(String[] args) { teacher space=new teacher(); } }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。
相关推荐
-
对比Java中的Comparable排序接口和Comparator比较器接口
Comparable Comparable 是排序接口. 若一个类实现了Comparable接口,就意味着"该类支持排序". 即然实现Comparable接口的类支持排序,假设现在存在"实现Comparable接口的类的对象的List列表(或数组)",则该List列表(或数组)可以通过 Collections.sort(或 Arrays.sort)进行排序. 此外,"实现Comparable接口的类的对象"可以用作"有序映射(如Tree
-
详解Java中Comparable和Comparator接口的区别
详解Java中Comparable和Comparator接口的区别 本文要来详细分析一下Java中Comparable和Comparator接口的区别,两者都有比较的功能,那么究竟有什么区别呢,感兴趣的Java开发者继续看下去吧. Comparable 简介 Comparable 是排序接口. 若一个类实现了Comparable接口,就意味着"该类支持排序". 即然实现Comparable接口的类支持排序,假设现在存在"实现Comparable接口的类的对象的List列表(
-
java 中Comparable与Comparator详解与比较
java 中Comparable与Comparator详解 今天查看TreeMap的源码,发现其键必须是实现Comparable或者Comparator的接口时产生了一些兴趣,比如在TreeMap中的put方法分别对Comparable和Comparator接口分别进行处理.那么疑问就来了,Comparable和Comparator接口的区别是什么,Java中为什么会存在两个类似的接口? Comparable和Comparator接口都是用来比较大小的,首先来看一下Comparable的定义
-
Java中实现Comparable和Comparator对象比较
当需要排序的集合或数组不是单纯的数字型时,通常可以使用Comparator或Comparable,以简单的方式实现对象排序或自定义排序. A comparison function, which imposes a total ordering on some collection of objects. Comparators can be passed to a sort method (such as Collections.sort or Arrays.sort) to allow pr
-
Java Comparable 和 Comparator 的详解及区别
Java Comparable 和 Comparator 的详解及区别 Java 中为我们提供了两种比较机制:Comparable 和 Comparator,他们之间有什么区别呢?今天来了解一下. Comparable 自然排序 Comparable 在 java.lang 包下,是一个接口,内部只有一个方法 compareTo(): public interface Comparable<T> { public int compareTo(T o); } Comparable 可以让实现它的
-
Java Comparable和Comparator对比详解
在实际项目开发过程中,我们经常需要对某个对象或者某个集合中的元素进行排序,常用的两种方式是实现某个接口.常见的可以实现比较功能的接口有Comparable接口和 Comparator接口,那么这两个又有什么区别呢? 关于Comparable接口 关于Comparable接口,其位于 java.lang.Comparable 中,实现这个接口,可以通过重写其 compareTo 方法进行自定义排序,一般用于实体类中,比如针对学生对象,根据其姓名.身高.年龄.地址等进行排序,商品根据名称.库存.价格
-
Java 中Comparable和Comparator区别比较
Comparable 简介Comparable 是排序接口.若一个类实现了Comparable接口,就意味着"该类支持排序". 即然实现Comparable接口的类支持排序,假设现在存在"实现Comparable接口的类的对象的List列表(或数组)",则该List列表(或数组)可以通过 Collections.sort(或 Arrays.sort)进行排序.此外,"实现Comparable接口的类的对象"可以用作"有序映射(如Tre
-
Java 比较接口comparable与comparator区别解析
这篇文章主要介绍了Java 比较接口comparable与comparator区别解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 package test0; import java.util.Comparator; //限定修饰符为friend不能为public,一个java文件中只能有一个public类 /*** * java程序是从一个public类的main函数开始执行的, *(其实是main线程),就像c程序是从main()函数开
-
Java元素排序Comparable与Comparator的区别
目录 1.字面含义不同 2.用法不同 2.1 Comparable 2.2 compareTo 排序方法说明 2.3 Comparator 3.扩展:Comparator 匿名类 4.使用的场景不同 总结 两者比较结构图: 在 Java 语言中,Comparable 和 Comparator 都是用来进行元素排序的,但二者有着本质的区别.它们两也是常见的面试题,所以今天我们一起来盘它. 1.字面含义不同 我们先从二者的字面含义来理解它,Comparable 翻译为中文是“比较”的意思,而 Com
-
Java中的Comparable和Comparator接口
目录 一. Comparable接口 1. Comparable简介 2. 为什么要实现Comparable接口 3. Comparable的实际应用 二. Comparator接口 1. Comparator简介 2. Comparator接口的实际运用 三. Comparable和Comparator的比较 一. Comparable接口 1. Comparable简介 Comparable是排序接口. 若一个类实现了Comparable接口,就意味着该类支持排序. 实现了Comparabl
-
Java集合之Comparable和Comparator接口详解
目录 Comparable接口 Comparable接口简单应用 Comparator接口 Comparator接口简单应用 Comparator接口 VS Comparable接口 总结 java提供了Comparable接口与Compatator接口,它们为数组或集合中的元素提供了排序逻辑,实现此接口的对象数组或集合可以通过Arrays.sort或Collections.sort进行自动排序 Comparable接口 一个类实现了Comparable接口,则表明这个类对象之间是可以互相比较的
-
Java基础之Comparable与Comparator概述
自然排序Comparable 对于自定义类进行排序要实现Comparable接口,重写compareTo() 方法,如果不重写,像使用Arrays.sort()排序就会报错 package com.che.lambda; import java.util.Objects; /** * @author cheyuhang on 2021/4/23 */ public class Good implements Comparable{ private String name; private Dou
-
java 中接口和抽象类的区别与对比
java 中接口和抽象类的区别与对比 接口和抽象类的概念不一样. 接口是对动作的抽象,抽象类是对根源的抽象. 抽象类表示的是,这个对象是什么.接口表示的是,这个对象能做什么.比如,男人,女人,这两个类(如果是类的话--),他们的抽象类是人.说明,他们都是人. 人可以吃东西,狗也可以吃东西,你可以把"吃东西"定义成一个接口,然后让这些类去实现它. 所以,在高级语言上,一个类只能继承一个类(抽象类)(正如人不可能同时是生物和非生物),但是可以实现多个接口(吃饭接口.走路接口). 第一点:接
-
详解java中接口与抽象类的区别
详解java中接口与抽象类的区别 1.abstract class 在 Java 语言中表示的是一种继承关系,一个类只能使用一次继承关系.但是,一个类却可以实现多个interface. 2.在abstract class 中可以有自己的数据成员,也可以有非abstarct的成员方法,而在interface中,只能够有静态的不能被修改的数据成员(也就是必须是static final的,不过在 interface中一般不定义数据成员),所有的成员方法都是abstract的. 3.abstract c
-
java和 javaw 及 javaws的区别解析
java ,javaw 和 javaws 的区别: 首先,所有的这些都是java的启动装置,java.exe经常使用,当使用命令行输出到window的时候,会有java.exe进程,通过任务管理器可以看到.通常 我们执行一些小的java程序的时候会有 java.exe进程在运行.javaw.exe对于我们也比较特殊,我们也能够通过任务管理器看到javaw.exe进程的运行.javaws通常web开启的时候的进程. jvm.dll jvm.dll是一个java虚拟机在windows平台环境
-
Java中接口和抽象类的区别详解
需求:接口是否可继承接口?抽象类是否可实现(implements)接口?抽象类是否可继承实体类(concrete class)?抽象类中是否可以有静态的main方法? 先说明二者的定义,然后聊聊需求,最后分析二者的区别. 含有abstract修饰符的类即为抽象类,抽象类不能创建实例对象.含有抽象方法的类必须定义为abstract class.在abstract class中,方法不必是抽象的,但是抽象方法必须在具体子类中实现,所以,不能有抽象构造方法或抽象静态方法.子类如果没有实现抽象父类中的所
随机推荐
- Vue.js实现价格计算器功能
- Java使用JavaMail发送邮件的方法
- JS返回上一页实例代码通过图片和按钮分别实现
- 限制复选框最多选择项的实现代码
- php使用gettimeofday函数返回当前时间并存放在关联数组里
- PHP动态地创建属性和方法, 对象的复制, 对象的比较,加载指定的文件,自动加载类文件,命名空间
- js数值计算时使用parseInt进行数据类型转换(jquery)
- JavaScript实现滚动栏效果的方法
- JS实现淘宝支付宝网站的控制台菜单效果
- VBS教程:属性-SerialNumber 属性
- SQLServer存储过程中事务的使用方法
- jquery序列化方法实例分析
- JavaScript更改原始对象valueOf的方法
- RealPlay11 安装过程遭遇CNNIC附清除办法
- 浅谈java内存管理与内存溢出异常
- Android应用开发中Fragment与Activity间通信示例讲解
- JavaMailSender实现邮箱验证功能
- OL7.6上RPM方式安装Oracle 19c的教程
- windows 10 下mysql-8.0.17-winx64的安装方法图解
- Python numpy线性代数用法实例解析