java compare接口_Java 中 Comparable 接口的 compareTo 方法的写法和用法

Comparable 接口有一个 compareTo 方法,用来比较对象的“大、小”。

写法例子:

// 老师类

class Teacher implements Comparable {   // Comparable 接口加上了泛型

private String name;

private int ranking;

public void setRanking( int ranking ) {

this.ranking = ranking;

}

// 根据 ranking 进行比较

public int compareTo(Teacher t1){

return ranking - t1.ranking;

}

//

public String toString() {

return "Teacher [name=" + name + ", ranking=" + ranking + "]";

}

}

调用 compareTo 进行比较:

Teacher t1 = new Teacher();

Teacher t2 = new Teacher();

t1.setRanking( 13 );

t2.setRanking( 41 );

int result = t1.compareTo(t2);

System.out.println(result);

-----------------------------------------

对 list 排序,使用 Collections.sort(list); 方法。

-----------------------------------------

另外 Integer,String,(java.util.)Date 都已经实现了 Comparable 接口,可以直接比较对象

Integer a1 = 31;

Integer a2 = 51;

int result1 = a1.compareTo( a2 );

System.out.println( result1 );

String s1 = "auspicious";

String s2 = "autumn";

int result2 = s1.compareTo( s2 );

System.out.println( result2 );

Date d1 = new Date();

Thread.sleep( 1000 );

Date d2 = new Date();

int result3 = d1.compareTo( d2 );

System.out.println( result3 );

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值