自然排序与比较器排序的简单比较

                     自然排序与比较器排序
     自然排序:
              其实就是接口对实现它的每个类对象强行进行整体排序,这种排序就是自然排序。它只有一个方法是compareTo方法,也被称为自然比较方法。
              实现此接口的对象列表(和数组)可以通过 Collections.sort(和 Arrays.sort)进行自动排序。(Arrays.sort(T[] a))           
              T - 可以与此对象进行比较的那些对象的类型
              o - 要比较的对象
              compareTo(T o)方法比较此对象与指定对象的顺序,如果该对象大于、等于或小于指定对象,则返回值为正整数、零或负整数。
public T compareTo(T   o){ 
	  return this.(属性或方法) - o.(属性或方法);
}
import java.lang.comparable;
public  class  Student{
private int  id;
private int  sorce;
public Student(){
}
public Student(int id,int sorce){
        this.id=id;
        this.sorce=sorce;
public int getId(){
        return id;
}
public void setId(int id){
        this.id=id;
}
public int getSorce(){
        return sorce;
}
public void setSorce(int sorce){
        this.sorce=sorce;
}
public  Student compareTo(Student s){
         return this.getSorce()-s.getSorce();
}
}
        比较器排序:
		          强行对某个对象 collection 进行整体排序 的比较函数。可以将 Comparator 传递给 sort 方法(如 Collections.sort 或 Arrays.sort),从而允许在排序顺序上实现精确控制。(Arrays.sort(T[] a, Comparator<? super T> c))
		          Comparator接口有两个方法,一个是compare(T  o1,T  o2)方法,一个则是equals(Object o)方法。
		          T - 此 Comparator 可以比较的对象类型
                  o1 - 要比较的第一个对象。
                  o2 - 要比较的第二个对象。
		          compare(T  o1,T  o2)方法功能是比较用来排序的参数。根据第一个参数小于、等于或大于第二个参数分别返回负整数、零或正整数。
public T compare(T o1,T o2){
          return  o1.(属性或方法)-o2.(属性或方法);
}

类似于上面:

public Student compare(Student s1,Student s2){
          return  s1.getId()-s2.getId();
}   
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值