• Java 中对类进行排序的方法(转)


    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

  • 相关阅读:
    php 延迟静态绑定: static关键字
    python分片
    用逗号分隔数字,神奇
    ubuntu 屏幕截图
    js 获取随机数
    netty : NioEventLoopGroup 源码分析
    LinkedList 源码分析
    面向对象
    JS
    网页
  • 原文地址:https://www.cnblogs.com/Sikaozhe/p/4946875.html
Copyright © 2020-2023  润新知