JAVA中用于对象排序的比较器Comparable接口和compareTo()方法
来源:互联网 发布:ebsco数据库怎么下载 编辑:程序博客网 时间:2024/05/12 19:44
面向对象的三大特性:封装,继承,多态。
JAVA中的比较器接口Comparable用于数组对象的排序,要使用此功能,必须让类继承自Comparable接口,重写compareTo(Object obj)方法。
import java.util.*;
class Person implements Comparable{
private String name;
private int age;
private float score;
public Person(String name,int age,float score){
this.name=name;
this.age=age;
this.score=score;
}
public String toString(){
return "姓名:"+this.name+", 年龄:"+this.age+", 成绩:"+this.score;
}
public int compareTo(Object obj){
Person p = (Person)obj;
if(p.score>this.score){
return 1;
}
else if(p.score<this.score){
return -1;
}
else{
if(p.age>this.age){
return 1;
}
else if(p.age<this.age){
return -1;
}
else{
return 0;
}
}
}
}
public class OODemo35{
public static void main(String []args){
Person p[] = new Person[5];
p[0] = new Person("张三 ",23,96);
p[1] = new Person("张三2",24,96);
p[2] = new Person("张三3",21,94);
p[3] = new Person("张三4",22,98);
p[4] = new Person("张三5",20,89);
Arrays.sort(p);
for(int x=0;x<p.length;x++){
System.out.println(p[x]);
}
}
}
输出结果:
姓名:张三4, 年龄:22, 成绩:98.0
姓名:张三2, 年龄:24, 成绩:96.0
姓名:张三 , 年龄:23, 成绩:96.0
姓名:张三3, 年龄:21, 成绩:94.0
姓名:张三5, 年龄:20, 成绩:89.0
- JAVA中用于对象排序的比较器Comparable接口和compareTo()方法
- 普通java类(排序)实现Comparable接口重写CompareTo方法
- 普通java类(排序)实现Comparable接口重写CompareTo方法
- Java Comparable排序接口和Comparator比较器接口
- Java:对集合中的对象进行排序需要实现Interface Comparable接口并实现int compareTo(T o)方法
- Comparable接口compareTo方法的反对称性
- 集合排序的两种方法Comparable接口和Comparator接口(比较器)
- comparable的compareTo( )方法
- comparable的compareTo( )方法
- list 排序 实现comparable接口 及 重写compareTo方法
- 关于comparator接口和comparable接口以及它们各自的方法compare()和compareTo()
- java比较接口Comparable,对象排序存在TreeSet中
- 对象的比较,排序,重写equals(),compareTo(),hashCode()方法
- Java comparable接口 对象排序
- Java排序之Comparable接口和Comparator接口的比较和应用示例
- Java排序之Comparable接口和Comparator接口的比较和应用示例
- java 设计模式 策略模式,comparable 接口,compareTo 方法
- 对象的比较--Comparable接口和Comparator接口的使用
- ubuntu ftp服务器搭建
- response的contentType 几种类型
- 设计阶段
- 二进制除法与模2除法的区别(转)
- 为已有的web项目添加maven支持
- JAVA中用于对象排序的比较器Comparable接口和compareTo()方法
- PLSQL通用 分页 Function
- 搜索maven仓库
- UVA 127
- 设计模式之Decorator,C++
- 进程切换分析篇
- JSF框架opermasks中时间组件兼容ie9的笔记心得
- ios 判断程序是否是第一次运行
- jquery 设置select指定项选中