废话不多说,贴上代码!!!

package com.xxxxxx.xxxxxx.xxxxxx;import java.util.ArrayList;
import java.util.Collections;
import java.util.List;public class Person implements Comparable<Person> {private String name;private int age;private int money;public String getName() {return name;}public void setName(String name) {this.name = name;}public int getAge() {return age;}public void setAge(int age) {this.age = age;}public int getMoney() {return money;}public void setMoney(int money) {this.money = money;}public Person(String name, int age, int money) {super();this.name = name;this.age = age;this.money = money;}@Overridepublic String toString() {return name + "=" + age + "=" + money;}@Overridepublic int compareTo(Person o) {if ((this.money + this.age) - (o.getMoney() + o.getAge()) > 0) {return 1;} else {return -1;}}public static void main(String[] args) {Person p1 = new Person("a", 10, 10);Person p2 = new Person("b", 20, 20);Person p3 = new Person("c", 100, 100);Person p4 = new Person("d", 50, 50);Person p5 = new Person("e", 30, 30);List<Person> p = new ArrayList<>();p.add(p1);p.add(p2);p.add(p3);p.add(p4);p.add(p5);Collections.sort(p);p.forEach(param -> {System.out.println(param);});}}

效果图:

最后我觉得还是用内部类的方式方便一点,平时简单的排序 使用lambda的排序也够用了!

java 重写compareTo方法实现类自定义排序相关推荐

  1. java重写compareTo()方法,比较对象的大小

    理论: 使用Comparable或Comparator两个接口中的任何一个来比较对象的大小  一.Comparable接口的使用,自然排序       1.像String.BigDecimal.包装类 ...

  2. JAVA集合四:比较器--类自定义排序

    参考链接: HOW2J.CN 前言 对于JAVA集合,都能够用集合的工具类Collections 提供的方法: Collections.sort(List list) Collections.sort ...

  3. Java中CompareTo()方法的详细介绍

    Java中CompareTo()方法: String 字符串用compareTo方法从第一位开始比较, 如果遇到不同的字符,则马上返回这两个字符的ascii值差值.返回值是int类型 1.当两个比较的 ...

  4. Java Date compareTo()方法具有什么功能呢?

    转自: Java Date compareTo()方法具有什么功能呢? Date compareTo()方法的功能简介说明:对比两个Date值的大小Date compareTo()方法的语法:publ ...

  5. java list compareto_java中的compareto方法以及LIst列表排序的详细介绍【转】

    /*测试类*/ package test; import java.util.ArrayList; import java.util.Collections; import java.util.Com ...

  6. java重写compareTo的方法

    重写compareTo的三种方法 创建类 匿名内部类 lambda表达式 创建类 //实现Comparator<T>接口,重写compare方法 class Compare impleme ...

  7. [转载] java重写toString()方法

    参考链接: 在Java中重写toString() 前言: 在你兴高采烈的写完一个类,创建测试类时,创建对象,传入参数,调用对象,以为会得到参数值,但突然发现输出的是" 类名@什么东东?(其实 ...

  8. Java重写equals方法时为什么要重写hashCode方法

    在我们平时编写Java代码时,重写equals方法时一定要重写hashCode方法,这是为什么呢? 在讨论这个问题前,我们先看下Object类中hashCode方法和equals方法. hashCod ...

  9. java 重写equals方法的种种“坑”

    重写java object类的equals方法 覆盖equals方法请遵守约定 什么情况下要覆盖equals方法 容易违反的对称性 不易察觉的传递性 覆盖equals请遵守通用约定 似乎覆盖equal ...

最新文章

  1. Java遍历Map对象的四种方法
  2. 小学生四则运算出题程序 无操作界面java版 简单的运用java中一些基本操作
  3. 中职计算机基础课堂传统教学,中职计算机基础知识教学创新
  4. caffe基础(7): 命令行解析
  5. Java监控工具VisualVM
  6. 系统相机裁剪比例_拍照时图片比例怎么选?比构图还要提前一步的摄影攻略要做好...
  7. 大数据_Flink_流式处理_Flik Vs Spark streaming_Flink的特点---Flink工作笔记0007
  8. 算法总结之递推与递归
  9. 商业智能BI如何推进制造业转型
  10. 房屋建筑结构安全自动在线监测系统解决方案
  11. 对三极管特性曲线的理解
  12. java获取某年度有多少周_java获取一年共有多少周
  13. 怎样用自己电脑搭建网络服务器!不花一分钱
  14. ajax同步导致浏览器假死
  15. 伪类选择器编写顺序以及注意事项
  16. Z-STACK之cc2530LED驱动详解
  17. Java SE Development Kit (JDK) 安装
  18. C#调用系统蜂鸣,警报声
  19. 大家在人生低谷时有多惨,怎么熬过来的(四)
  20. Zhong__Go随机密码生成器

热门文章

  1. html网页自动兼容模式,解决CSS浏览器兼容性问题的4种方案
  2. 杭电ACM基础题(2031、2032、2033、2034、2035、2039、2040、2042、2043、2051)
  3. 一封2014年回怼微软坑爹正版计划的信
  4. Linux下使用中文、字体、版
  5. 时下世界上最先进的液晶面板技术---ips
  6. requireJs详解(二)
  7. 关于会声会影视频窗口大小如何改变的解决
  8. 安装pandas和sklearn
  9. 如何给视频配音?文字转语音技巧分享,不会配音的快码住
  10. 基于AI的5G技术-研究方向与范例-学习笔记