Comparator接口排序

public class CompareToImplementsComparator implements Comparator {
    public int compare(Object o1, Object o2) {
      int i=(Integer)o1;
       int j=(Integer)o2;
       if(i>j){
        return 1;
        }
     return 0;
     }
@SuppressWarnings("unchecked")
public static void main(String[] args) {
 List<Integer> list=new ArrayList();
 for(int i=10;i>0;i--){
      list.add(i);
 }
 Collections.sort(list, new CompareToImplementsComparator());
  for(int j=0;j<list.size();j++){
       System.out.println(list.get(j));
 }
}
}

时间: 2024-08-22 15:14:27

Comparator接口排序的相关文章

我的Java开发学习之旅------&amp;gt;Java利用Comparator接口对多个排序条件进行处理

一需求 二实现Comparator接口 三验证排序结果 验证第一条件首先按级别排序级别最高的排在前面 验证第二条如果级别相等那么按工资排序工资高的排在前面 验证第三条如果工资相当则按入职年数排序入职时间最长的排在前面 附录javautilComparator接口源代码 一.需求 假设现在有个如此的需求:需要对一个这样的雇员列表进行排序,排序规则如下: 1.首先级别最高的排在前面, 2.如果级别相等,那么按工资排序,工资高的排在前面, 3.如果工资相当则按入职年数排序,入职时间最长的排在前面. 雇

Java语言入门教程(十七):Comparable与Comparator接口

在实际开发中,我们常常需要对某些数据进行排序,这些数据往往使用数组 或者集合保存.对于数组中的数据排序,API中提供了一个数组的工具类, java.util.Arrays,类中重载了大量的sort方法,可以对各种类型的数组进行排 序.如对于Object类型数组排序有如下方法: public static void sort(Object[] a) 假设有类Course,如下: package com.csst.relation; public class Course { private Str

检查Comparator接口的契约义务

java.util.Comparator接口容易被实现并使用,但是在Comparator的API文档里有些部分还是应当仔细阅读一下的. 实现了Comparator接口的类可以传给例如Collections.sort这样的排序方法.它们也可以被Map或者Set类使用,用来保证Map或者Set里的元素始终是按某种顺序排列的.TreeSet和TreeMap就是这样的类. 在Comparator接口里,只有一个方法是需要实现的: int compare(Object o1,Object o2); 如果o

comparator接口与Comparable接口的区别

Comparable & Comparator 都是用来实现集合中元素的比较.排序的,只是 Comparable 是在集合内部定义的方法实现的排序,Comparator 是在集合外部实现的排序,所以,如想实现排序,就需要在集合外定义 Comparator 接口的方法或在集合内实现 Comparable 接口的方法. Comparator位于包java.util下,而Comparable位于包   java.lang下 Comparable 是一个对象本身就已经支持自比较所需要实现的接口(如 St

Java中实现Comparator接口和用法实例(简明易懂)_java

在java中,如果要对集合对象或数组对象进行排序,需要实现Comparator接口以达到我们想要的目标. 接下来我们模拟下在集合对象中对日期属性进行排序 一.实体类Step package com.ljq.entity; /** * 运号单流程 * * @author Administrator * */ public class Step{ /** 处理时间 */ private String acceptTime = ""; /** 快件所在地点 */ private String

浅析Java中comparator接口与Comparable接口的区别_java

Comparable 简介 Comparable 是排序接口. 若一个类实现了Comparable接口,就意味着"该类支持排序".  即然实现Comparable接口的类支持排序,假设现在存在"实现Comparable接口的类的对象的List列表(或数组)",则该List列表(或数组)可以通过 Collections.sort(或 Arrays.sort)进行排序. 此外,"实现Comparable接口的类的对象"可以用作"有序映射(如

JAVA之旅(二十)—HashSet,自定义存储对象,TreeSet,二叉树,实现Comparator方式排序,TreeSet小练习

JAVA之旅(二十)-HashSet,自定义存储对象,TreeSet,二叉树,实现Comparator方式排序,TreeSet小练习 我们继续说一下集合框架 Set:元素是无序(存入和取出的顺序不一定一致),元素不可以重复 Set集合的功能和Collection是一致的 我们重点关注的是子类对象 我们来聊聊 一.HashSet HashSet底层结构是哈希表 什么是HashSet? package com.lgl.hellojava; //公共的 类 类名 public class HelloJ

jdk-不能找到Comparator接口

问题描述 不能找到Comparator接口 can not find the class file for java.util.Comparator 怎么解决这个问题 是我的JDK不对吗 ? 我安装的JDK是1.80的 解决方案 Comparator接口 解决方案二: 你的环境变量配置有没有问题,重新配置,然后重启试试,如果Comparator能够自动导入就可能是你的虚拟机的配置问题了 解决方案三: 你build Path中是不是没有导入你的jdk1.8....才导致这个问题的呢?

对比Java中的Comparable排序接口和Comparator比较器接口_java

ComparableComparable 是排序接口. 若一个类实现了Comparable接口,就意味着"该类支持排序". 即然实现Comparable接口的类支持排序,假设现在存在"实现Comparable接口的类的对象的List列表(或数组)",则该List列表(或数组)可以通过 Collections.sort(或 Arrays.sort)进行排序. 此外,"实现Comparable接口的类的对象"可以用作"有序映射(如TreeM