Comparable: 一个类实现了Camparable接口则表明这个类的对象之间是可以相互比较的,这个类对象组成的集合就可以直接使用sort方法排序,sort方法调用compareTo()方法里定义的方法进行排序,Comparable的缺点是只能按一种方式排序

package object;
import java.util.*;
public class Comparator1 implements Comparable<Comparator1>{
public int i;
public Comparator1(int i){
this.i = i;
}
@Override
public int compareTo(Comparator1 o) //
{ return this.i>o.i?1:-1;
} public static void sort(int[] i)
{ }
public static void main(String[] args)
{
Comparator1[] c1 = new Comparator1[]
{
new Comparator1(9),
new Comparator1(2),
new Comparator1(0),
new Comparator1(4),
new Comparator1(5),
};
Arrays.sort(c1);
System.out.println(Arrays.toString(c1));
List<Integer> list = new ArrayList<Integer>(Arrays.asList(1,2,6,2,76));
//Collections.sort(list);
//System.out.println(list);
}
public String toString()
{
return "Comparator1 = " + i;
}
}

java Comparator和Comparable(比较器)的更多相关文章

  1. Java://Comparator、Comparable的用法(按照要求将set集合的数据进行排序输出):

    import java.util.ArrayList; import java.util.Collections; import java.util.Comparator; //comparator. ...

  2. java://Comparator、Comparable的用法(按照要求将map集合的键值对进行顺序输出)

    import java.util.*; public class Person implements Comparable<Person>//使Person的属性具有比较性 { priva ...

  3. Java自学-集合框架 Comparator和Comparable

    Java Comparator和Comparable 步骤 1 : Comparator 假设Hero有三个属性 name,hp,damage 一个集合中放存放10个Hero,通过Collection ...

  4. java中Comparable和Comparator两种比较器的区别

    Comparable和Comparator接口都是为了对类进行比较,众所周知,诸如Integer,double等基本数据类型,java可以对他们进行比较,而对于类的比较,需要人工定义比较用到的字段比较 ...

  5. Java中的Comparable接口和Comparator接口

    Comparator位于包java.util下,比较器,是在集合外部定义排序.Comparable位于包java.lang下,代表当前对象可比较的,是在集合内部实现排序. Comparable代表一个 ...

  6. Java学习之Comparable与Comparator的区别

    Comparable & Comparator 都是用来实现集合中元素的比较.排序的,只是 Comparable 是在集合内部定义的方法实现的排序,Comparator 是在集合外部实现的排序 ...

  7. Java基础系列-Comparable和Comparator

    原创文章,转载请标注出处:<Java基础系列-Comparable和Comparator> 一.概述         Java中的排序是由Comparable和Comparator这两个接 ...

  8. Comparable比较器和Comparator比较器

    1.Comparable比较器 在Arrays类中存在sort()排序方法,此方法可以直接对对象数组进行排序. public static void sort(Object[] a 根据元素的自然顺序 ...

  9. Java集合(一)--Comparable和Comparator

    Comparable: 是集合内部的方法实现的排序,只有一个方法 public interface Comparable<T> { public int compareTo(T o); } ...

随机推荐

  1. php面试问答

    结合实际PHP面试,汇总自己遇到的问题,以及网上其他人遇到的问题,尝试提供简洁准确的答案 包含MySQL.Redis.Web.安全.网络协议.PHP.服务器.业务设计.线上故障.个人简历.自我介绍.离 ...

  2. 【转】maven常用插件介绍

    我们都知道Maven本质上是一个插件框架,它的核心并不执行任何具体的构建任务,所有这些任务都交给插件来完成,例如编译源代码是由maven- compiler-plugin完成的.进一步说,每个任务对应 ...

  3. bzoj5164: 餐厅计划问题(三分+贪心)

    网络流经典题里餐巾计划的加强版...天数变成了$10^5$,那就不能用费用流做了... 考虑费用流的时候,单位费用随流量的增加而减少,也就是说费用其实是个单峰(下凸)函数. 那么可以三分要买的餐巾个数 ...

  4. 解题:BZOJ 5093 图的价值

    题面 显然只需要考虑一个点(再乘n),那么枚举这个点的度数,另外的$\frac{(n-1)(n-2)}{2}$条边是随意连的,而这个点连出去的边又和其余$n-1$个点产生组合,所以答案就是 $n*\f ...

  5. 洛谷P4486 Kakuro

    题意:你有一个棋盘,某些格子是限制条件,形如"从这里开始下面所有连续空格的和为a"或"从这里开始向右的所有连续空格之和为b"一个格子可以同时拥有两个限制条件. ...

  6. c++并发编程之条件变量(Condition Variable)

    条件变量(Condition Variable)的一般用法是:线程 A 等待某个条件并挂起,直到线程 B 设置了这个条件,并通知条件变量,然后线程 A 被唤醒.经典的「生产者-消费者」问题就可以用条件 ...

  7. UDP ------ UDP Broadcast Address

    Related information link : 百度百科---->广播地址 Use restrictions: 1. You can only broadcast on the same ...

  8. 标准误(Standard Error)

    sklearn实战-乳腺癌细胞数据挖掘 https://study.163.com/course/introduction.htm?courseId=1005269003&utm_campai ...

  9. Hadoop生态圈-Flume的组件之sink处理器

    Hadoop生态圈-Flume的组件之sink处理器 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一. 二.

  10. Hadoop生态圈-Flume的组件之拦截器与选择器

      Hadoop生态圈-Flume的组件之拦截器与选择器 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 本篇博客只是配置的是Flume主流的Interceptors,想要了解更详细 ...