zoukankan      html  css  js  c++  java
  • Comparable接口的使用

    功能:

    Comparable接口可用于对象的排序或者对象的分组

    介绍:

    Comparable接口强行对实现它的类的每个实例进行自然排序,该接口的唯一方法compareTo方法被称为自然比较方法

    方法: int compareTo(Object   o)  

    利用当前对象和传入的目标对象进行比较:

    若是当前对象比目标对象大,则返回1,那么当前对象会排在目标对象的后面

    若是当前对象比目标对象小,则返回-1,那么当前对象会排在目标对象的后面

    若是两个对象相等,则返回0

    实例:

    import java.util.Arrays;
    
    public class User implements Comparable<User> {
        
        public int age;
        public String username;
    
        public User(int age, String username) {
            this.age = age;
            this.username = username;
        }
    
        @Override
        public String toString() {
            return this.username;
        }
    
        @Override
        public int compareTo(User o) {
            if(this.age>o.age) {
                return 1;
            } else if(this.age<o.age) {
                return -1;
            } else {
                return 0;
            }
        }
        
        public static void main(String[] args) {
            User[] arr = new User[3];
            arr[0] = new User(15,"user1");
            arr[1] = new User(10,"user2");
            arr[2] = new User(20,"user3");
            
            System.out.println("排序前:");
            System.out.println(Arrays.toString(arr));
            
            Arrays.sort(arr);
            
            System.out.println("排序后:");
            System.out.println(Arrays.toString(arr));
    
        }
    
    }

    执行结果:

    排序前:
    [user1, user2, user3]
    排序后:
    [user2, user1, user3]
  • 相关阅读:
    提权函数之RtlAdjustPrivilege()
    用C#写外挂或辅助工具必须要的WindowsAPI
    ASP.net中保持页面中滚动条状态
    asp.net窗体的打开和关闭
    界面原型设计工具 Balsamiq Mockups
    在List(T)中查找数据的两种方法
    P2158 [SDOI2008]仪仗队 题解
    P1531 I Hate It 题解
    C#
    破解网站防盗链
  • 原文地址:https://www.cnblogs.com/modou/p/11630956.html
Copyright © 2011-2022 走看看