Comparable 比较器|学习笔记

简介: 快速学习 Comparable 比较器

开发者学堂课程【Java 高级编程Comparable 比较器】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/20/detail/361


Comparable 比较器


内容介绍

1.Comparable 基本的定义结构

2. 范例:实现自定义对象数组排序操作

 

 

通过分析可以发现如果要实现对象的比较肯定需要有比较器来制定比较规则,而比较的规则就通过 Comparable 来实现,对于 Comparable 而言,需要清楚其基本的定义结构:

图片3.png

代码示例:

public interface Companable<T> {

/**

*实现对象的比较处理操作

*@param o要比较的对象

*@return当前数据比传入的对象小返回负数,如果大于返回整数,如果等于返回0

*/

public int compareTo(To) ;

}

 

范例:实现自定义对象数组排序操作

package cn.mldn. demo;.

import java.util.Arrays;.

public class JavaAPIDemo {.

public static void main(String[] args) throws Exception {

Person data [] = new Person [] {

new Person("小强-A",80) ,

new Person("小强-B",50) ,

new Person("小强-C".100)} ;.

Arrays.sort(data);   //进行对象数组的排序

system.out.println( Arrays.toString(data) ) ;.

}

}

class Person implements Comparable<Person> {.

private String name ;-

private int age ;

public Person( String name, int age)

this.name = name;

this.age = age;

}

@override

public int compareTo(Person per) {

return this.age - per.age ;

/无参构造、setter、getter略

@override

public string toString( ) {

return " 【Person类对象】姓名:" + this.name + "、年龄: "+

}

}.

系统就可以自动为其实现排序处理。

相关文章
|
4月前
|
Java
Comparator与Comparable有什么区别
【8月更文挑战第16天】Comparator与Comparable有什么区别
101 5
|
7月前
|
Java
Java中的比较器Comparable与Comparator
Java中的比较器Comparable与Comparator
|
7月前
|
Java
Comparable和Comparator两种比较器详解
Comparable和Comparator两种比较器详解
84 0
Comparable与Comparator对象比较
Comparable与Comparator对象比较
62 0
排序Comparable 和 Comparator的区别
排序Comparable 和 Comparator的区别
117 0
|
Java
Java对象的比较和排序(Comparator和Comparable)
Java对象的比较和排序(Comparator和Comparable)
161 0
Java对象的比较和排序(Comparator和Comparable)
|
Java
Java的比较器Comparable和Comparator用法
Java的比较器Comparable和Comparator用法
183 0
|
Java
说说Comparator比较器那些用法
关于java的排序,在java8之后有了函数式接口之后,就产生了很多种Comparator比较器的写法。细数一下那些常用的比较器。
1424 1
说说Comparator比较器那些用法
Comparable与Comparator有什么区别?
Comparable与Comparator有什么区别?
230 0
|
存储 Java 索引
【Java集合类】之TreeSet集合与Comparable/Comparator排序
【Java集合类】之TreeSet集合与Comparable/Comparator排序
156 0