天天看点

Comparable 比较器|学习笔记

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

课程地址:

https://developer.aliyun.com/learning/course/20/detail/361

Comparable 比较器

内容介绍:

1.Comparable 基本的定义结构

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

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

Comparable 比较器|学习笔记

代码示例:

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 + "、年龄: "+

}

}.

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