白菜之comparable的用法
来源:互联网 发布:bluehost怎么绑定域名 编辑:程序博客网 时间:2024/04/28 01:18
package com.example.eleven;/** * @author Administrator 公共类Employee首先实现接口Comparable * 然后建立本类带参数构造函数,重载toString和compareTo方法 */public class Employee implements Comparable<Employee> {private String name;private int id;private String count;public Employee(int id, String name, String count) {this.count = count;this.id = id;this.name = name;}@Overridepublic String toString() {StringBuilder aa = new StringBuilder();aa.append(id);aa.append(name);aa.append(count);return aa.toString();}<span style="color:#ff0000;">@Overridepublic int compareTo(Employee x) {if (this.count.compareTo(x.count) > 0) {//如果是int型对比,那么直接this.id>x.id--->return 1;return -1;//这里如果写return 1;下面改成return -1,那么就是从小到大排列,这里是从大到小顺序排列} else if (this.count.compareTo(x.count) < 0) {return 1;}return 0;</span>}}
package com.example.eleven;import java.util.ArrayList;import java.util.Collections;import java.util.List;/** <span style="color:#ff6666;">* java中Comparable接口,任何实现此接口的类,都可以按照自己的意愿来实现对一组数据的排列 * 这里需要指出的是,任何实现Comparable<T>的类,都需要重写比较方法compareTo()。 * 在compareTo()里面可以根据数据的id进行比较,或者按照Sting的首字母进行比较, * 虽然最后返回的int值只有正数,负数,0,但是可以调整比较参数来调整从大到小还是从小到大顺序排序,刁刁滴! * 然后在调用类中实现collections.sort();方法就可以了,如果是保存在数组中,那么使用Array.sort()就可以了。</span> */public class Test {public static void main(String[] args) {List<Employee> list = new ArrayList<Employee>();list.add(new Employee(2, "东方", "A"));list.add(new Employee(25, "西方", "D"));list.add(new Employee(45, "南方", "W"));list.add(new Employee(15, "北方", "B"));list.add(new Employee(5, "东方", "S"));System.out.println("下面看是对比两种情况的数据排列!=-----------");for (Employee x : list) {System.out.println(x);}System.out.println("下面是用sort方法排列的,从小到大顺序进行排列=-----------");<span style="color:#ff0000;">Collections.sort(list);</span>for (Employee y : list) {System.out.println(y);}}}
0 0
- 白菜之comparable的用法
- Comparable 的用法~血泪史~
- 白菜之重写toString()、equals()方法的注意事项
- 白菜之几种基本数据类型随机数生成的小结!
- 水煮白菜的做法
- 高丽的辣白菜
- 管理的白菜汤
- Comparator和Comparable的用法和区别
- Java中复杂Comparable的用法
- comparable和comparator的用法与区别
- Comparator 与Comparable的不同用法
- Comparable接口的用法和实现
- Comparable和Comparator的比较用法
- Java中Comparable和Comparator的用法
- 我爱学Java之Comparable与Comparator的区别与用法
- 白菜之compareTo()和compareToIgnoreCase()
- 白菜萝卜的做法 - 凉拌菜
- 参观萝卜白菜的工厂
- 如何卸载Ubuntu软件
- [android小知识]clearAnimation的事件
- Android 仿QQ首页的消息和电话的切换页面
- Android中Activity四种启动模式和taskAffinity属性详解
- 大话设计模式07----代理模式
- 白菜之comparable的用法
- C语言关于union
- View在setScale后,getTop,getLeft和getLocationOnScreen的区别
- 睡睡念PM
- Servlet---Request和Response的用法演示
- 西蒙iphone-OpenGL ES 教程-06 : 3D坐标里的物体
- [iOS]Size Class不同尺寸适配的是什么样的机型(实验向)
- hdu 1175 连连看dfs(记录转弯次数)
- php页面分页类通用