`
吕金含
  • 浏览: 88020 次
  • 性别: Icon_minigender_1
  • 来自: 广州
文章分类
社区版块
存档分类
最新评论

java Comparable 接口

 
阅读更多

Comparable 接口

所有可以排序的类都实现了java.lang.Comparable 接口,Comparable接口中只有一个方法

public int compareTo(Object obj);该方法:

返回 0 表示 this==obj

返回 正数 表示 this>obj

返回 负数 表示 this<obj

8.2 实现了Comparable接口的类通过实现compareTo方法从而确定该类对象的排序方式。

comparator-比较器-在实体类之外定义-比较灵活,可以根据需求排序

comparable-定义在实体类上-可以直接使用Collections.sort(list);排序

8.3 自定义排序-匿名内部类 <br>

语法:new 类名/接口名(){//方法体 自定义方法 重写方法 } 集定义与实例化一体

集合-排序

Collections.sort(List list);--默认从小到大排序

项目1 用Comparator实现比较。如图将1-10之间的数字从小到大进行排序;

publicclassArrayList1 {

publicstaticvoidmain(String[] args) {

ArrayList<Integer> arrayList =newArrayList<Integer>();

// 初始化;

for(inti = 1; i <=10; i++) {

arrayList.add(i);

}

//创建一个比较器;

Comparator<Integer> c=newComparator<Integer>() {


@Override

publicintcompare(Integer o1, Integer o2) {

if(o1>o2){

return1;

}

if(o1<o2){

return-1;

}

return0;

}

};

//将对象和比较器添加到集合中去。

Collections.sort(arrayList, c);

for(Integer integer : arrayList) {

System.out.print(integer+" ");

}

}

}

运行如下:

将1-10之间的数字从大到小进行排序;

publicclassArrayList1 {

publicstaticvoidmain(String[] args) {

ArrayList<Integer> arrayList =newArrayList<Integer>();

// 初始化;

for(inti = 1; i <=10; i++) {

arrayList.add(i);

}

//创建一个比较器;

Comparator<Integer> c=newComparator<Integer>() {


@Override

publicintcompare(Integer o1, Integer o2) {

if(o1>o2){

return-1;

}

if(o1<o2){

return1;

}

return0;

}

};

//将对象和比较器添加到集合中去。

Collections.sort(arrayList, c);

for(Integer integer : arrayList) {

System.out.print(integer+" ");

}

}

}

分享到:
评论

相关推荐

    Comparable接口和Comparator使用示例

    Comparable 接口是 Java 中的一个接口,它提供了一个通用的比较机制,允许对象之间进行比较。实现 Comparable 接口的类可以使用 Arrays.sort() 方法对其对象数组进行排序。 在上面的示例代码中,我们定义了一个 ...

    java,Comparable接口实例

    1.什么是Comparable接口 此接口强行对实现它的每个类的对象进行整体排序。此排序被称为该类的自然排序 ,类的 compareTo 方法被称为它的自然比较方法 。实现此接口的对象列表(和数组)可以通过 Collections.sort ...

    java 实现Comparable接口排序,升序、降序、倒叙

    Java 实现 Comparable 接口排序,升序、降序、倒叙 Java 中的 Comparable 接口是一个非常重要的接口,它提供了一种排序的机制,允许开发者自定义对象的排序规则。在 Java 中,实现 Comparable 接口的类可以使用 ...

    comparator接口与Comparable接口的区别

    Comparator接口与Comparable接口是Java语言中两个重要的接口,它们都是用于比较和排序自定义类的对象的大小的。虽然它们两个都是用于比较的接口,但是它们有着不同的实现方式和应用场景。 相同之处:Comparator接口...

    Java8HashMap键与Comparable接口编程开

    这里我们将深入探讨Java 8 HashMap如何与Comparable接口结合使用,以及这背后的编程技术和设计原理。 首先,我们了解下Comparable接口。Comparable接口是Java中用于定义对象之间自然顺序的接口,它只有一个方法`...

    Comparable接口实现字符串比较大小排序的简单实例

    java通过Comparable接口实现字符串比较大小排序的简单实例

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

    首先,Comparable接口是一个排序接口,它定义了一个单一的方法`compareTo(T o)`,使得实现了Comparable接口的类的对象能够进行自然排序。这意味着如果你有一个实现了Comparable接口的对象列表(如List),你可以直接...

    java中实现Comparable接口实现自定义排序的示例

    Comparable 接口是 Java 中的一个接口,它定义了一个compareTo 方法,该方法用于比较两个对象的大小。该接口通常用于实现自定义排序的需求。 在我们的示例中,我们定义了一个 Student 类,该类实现了 Comparable ...

    java中Comparable和Comparator的区别

    Comparable接口位于java.lang包中,它只有一个方法:compareTo(Object o)。任何实现了Comparable接口的类,其实例都可以进行自然排序。自然排序指的是根据类的业务逻辑定义的排序规则。例如,String类就实现了...

    java 泛型接口示例

    下面我们将详细探讨Java泛型接口的相关知识点。 1. **泛型接口的定义** 泛型接口的定义方式与普通接口类似,只是在接口名之后添加了尖括号`&lt;T&gt;`,其中`T`是一个类型参数,代表某种未知的数据类型。例如: ```java...

    Java中Comparable和Comparator的区别

    Comparable接口来源于java.lang包,它定义了一个方法`compareTo(T o)`。任何类如果实现了Comparable接口,就表明这个类的对象可以相互比较大小。例如,Java中的String、Integer等类都实现了Comparable接口,这使得...

    Java 比较接口comparable与comparator区别解析

    Java 比较接口comparable与comparator区别解析 Java 语言中提供了两个比较接口: Comparable 和 Comparator,这两个接口都是用于比较对象的大小顺序的,但它们有着不同的使用场景和实现方式。在本文中,我们将详细...

    java比较器Comparable接口与Comaprator接口的深入分析

    Java中的比较器主要涉及到两种接口:Comparable接口和Comparator接口,它们在处理对象排序时起着关键作用。 **Comparable接口** Comparable接口是Java.lang包下的一个接口,它只有一个方法:compareTo(T o)。当一个...

    java排序Comparator和Comparable

    在Java编程语言中,排序是数据处理中一个非常常见的需求,而`Comparator`和`Comparable`接口则是实现排序的关键工具。这两个接口都是用于比较对象,但它们的应用场景和使用方式有所不同。 首先,`Comparable`接口是...

    【IT十八掌徐培成】Java基础第12天-02.TreeSet实现与Comparable接口.zip

    `Comparable`接口是Java中一个重要的接口,它定义了一个`compareTo()`方法。任何类如果实现了`Comparable`接口,就表明该类的实例可以进行比较。例如,`String`类已经实现了`Comparable`,所以我们可以直接比较两个...

    Java Comparable和Comparator对比详解

    Comparable 接口位于 java.lang.Comparable 中,是一个泛型接口,需要实现 compareTo 方法,以便比较对象的大小。Comparable 接口通常用于实体类中,例如学生对象、商品对象等,可以根据不同的属性进行排序,例如...

    推选Comparable自比较接口PPT资料.pptx

    Comparable接口是Java中用于对象排序的关键接口,它允许类的对象之间进行比较,并定义它们的自然排序。这个接口只有一个方法:`compareTo(Object o)`,此方法用于比较当前对象与指定对象`o`的顺序。如果当前对象小于...

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

    例如,Java中的String、Integer等内置类都实现了Comparable接口,可以方便地进行比较和排序。当你有一个实现了Comparable接口的对象列表或数组时,可以直接使用Collections.sort()或Arrays.sort()对其进行排序。...

    Java Comparable及Comparator接口区别详解

    Java Comparable及Comparator接口区别详解 Java 中的 Comparable 和 Comparator 接口都是用来比较对象大小的,但是它们之间有着非常重要的区别。 首先,让我们来了解一下 Comparable 接口。Comparable 接口位于 ...

    java的Comparator和Comparable.docx

    在 Java 中,Comparator 和 Comparable 是两个非常重要的接口,它们用于对象的排序操作。这两个接口都是在 java.util 包中定义的,主要用于定制排序规则。 **一、Comparator 接口** Comparator 接口允许我们创建...

Global site tag (gtag.js) - Google Analytics