Arrays.sort()方法可对任何实现compareble接口的对象数组排序。

源代码

EmployeeSortTest.java

import java.util.*;/*** This program demonstrates the use of the Comparable interface.* @version 1.30 2004-02-27* @author Cay Horstmann*/
public class EmployeeSortTest
{public static void main(String[] args){Employee[] staff = new Employee[3];staff[0] = new Employee("Harry Hacker", 35000);staff[1] = new Employee("Carl Cracker", 75000);staff[2] = new Employee("Tony Tester", 38000);Arrays.sort(staff);// print out information about all Employee objectsfor (Employee e : staff)System.out.println("name=" + e.getName() + ",salary=" + e.getSalary());}
}

Employee.java

public class Employee implements Comparable<Employee>
{private String name;private double salary;public Employee(String name, double salary){this.name = name;this.salary = salary;}public String getName(){return name;}public double getSalary(){return salary;}public void raiseSalary(double byPercent){double raise = salary * byPercent / 100;salary += raise;}/*** Compares employees by salary* @param other another Employee object* @return a negative value if this employee has a lower salary than* otherObject, 0 if the salaries are the same, a positive value otherwise*/public int compareTo(Employee other){return Double.compare(salary, other.salary);}
}

参考文章

https://blog.csdn.net/zouzong123/article/details/81071086

JAVA——自定义排序(实现Comparable接口)相关推荐

  1. Java 自定义排序

    文章目录 数组排序 包装类排序 Java 自定义排序 1.实现 Comparable 接口并重写 compareTo() 方法 2.实现 Comparator 接口,重写 compare() 方法. ...

  2. java 集合排序(Comparable、Comparator)

    一.java对集合排序的支持 java对集合的排序提供了两种方法. 1. Collections.sort(List list) ; 根据元素的自然顺序 对指定列表按升序进行排序. 2. Collec ...

  3. Java 自定义排序 Comparator

    语法: class 比较器名 implements Comparator 重写 int compare(Object o1, Object o2) import java.util.*;class c ...

  4. java自定义排序函数_JAVA中sort函数的 自定义排序 cmp函数的写法 【java】【cmp】...

    查了很多博客,了解挺多有关cmp函数的问题.所以在这里来总结一下写法.. 我们通常可以用这个cmp函数来改变Arrays.sort()函数的默认排序方法.这里我们以升序排序为例. 基本方法 int c ...

  5. Java 中类的比较与排序方法(应用Comparable接口与Comparator接口)通俗易懂

    引言 在平时写Java的程序的时候,如果要进行一些基本类型的变量的比较,可以很方便得调用Math.max().Math.min()等方法,如果要对数组或者列表进行排序,也可以用Arrays.sort( ...

  6. Java 学生名单排序 comparable接口

    2019.10.31 1.学生名单排序 ```java import java.util.*; import java.io.*;public class proA {public static vo ...

  7. Java基础之Comparable接口和Comparator接口的比较

    前言 就是普普通通的写这么一篇文章,java集合类估计java程序猿都知道,那就写一点小众的. 在实际应用中,我们往往有需要比较两个自定义对象大小的地方.而这些自定义对象的比较,就不像简单的整型数据那 ...

  8. java comparable接口_Java面试题之Java集合篇三

    Java面试题之Java集合篇三1.HashMap和HashTable有何不同? (1)HashMap允许key和value为null,而HashTable不允许. (2)HashTable是同步的, ...

  9. Java比较器之Comparable接口与Comparator接口的使用

    在java中经常会涉及到对象数组的排序问题,便涉及到对象之间的比较问题. java实现对象排序的方式有两种: 自然排序:java.lang.Comparable; 定制排序:java.util.Com ...

最新文章

  1. python 是什么类型的语言-Python什么意思是一门什么样的语言
  2. python如何计算分子描述符_Python——描述符(descriptor)解密
  3. C++中各种智能指针的实现及弊端(一)
  4. 由openSession、getCurrentSession和HibernateDaoSupport浅谈Spring对事物的支持
  5. javaweb 导出文件名乱码的问题解决方案
  6. bzoj:2018 [Usaco2009 Nov]农场技艺大赛
  7. 情绪对使用产品的影响——读《设计心理学》
  8. 1711: [Usaco2007 Open]Dingin吃饭
  9. 利用谷歌翻译。帮助你的网站轻松实现多语言互换
  10. Git学习笔记总结和注意事项
  11. 第0002 天:琐碎费时的小事
  12. JS屏蔽360浏览器代码
  13. 利用vCard实现电子名片扫码将个人信息保存到通讯录
  14. 【python】websockets
  15. Excel下拉选项设置
  16. PAT 7-14 电话聊天狂人
  17. flowable审批流+集成springboot
  18. 中文分词词库汇总(一)
  19. php配置环境变量方法
  20. matlab中plot矢量长度,关于plot函数矢量长度弹错的问题

热门文章

  1. python 对excel文件进行分词并进行词频统计_python 词频分析
  2. js 对一个字段去重_JS单行、多行文本字符去重和行去重
  3. vla点转为lisp点_专家们说,中国股市将进入牛市,大盘可能超12000点是真吗?
  4. oracle删除分区空间,Oracle 11g维护分区(三)——Dropping Partitions
  5. weblogic0638_Java安全之Weblogic 2016-0638分析
  6. php mysql八大动态w...,PHP+MySQL八大动态Web应用实战
  7. 深度学习和目标检测系列教程 2-300:小试牛刀,使用 ImageAI 进行对象检测
  8. 七十七、SpringBoot整合Rabbitmq
  9. 基于flink+clickhouse构建亿级电商全端用户画像平台训练营
  10. WWW 2020 开源论文 | 异构图Transformer