package com.zhoubo.concurrent.collection;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
/**
* 通过实现comparable来实现对对象的排序。
* @author Administrator
*
*/
public class OrderList2 {
/**
* @param args
*/
public static void main(String[] args) {
List list = new ArrayList();
list.add(new B(1));
list.add(new B(4));
list.add(new B(2));
list.add(new B(3));
list.add(new B(3));
//排序之前的顺序
System.out.println(list);
Collections.sort(list);
//排序之后的顺序
System.out.println(list);
}
}
class A {
public int i = 0;
public A(int ii) {
this.i = ii;
}
@Override
public String toString() {
return i+"";
}
}
class B extends A implements Comparable{
public B(int ii){
super(ii);
}
@Override
public int compareTo(Object arg0) {
if(this.i > ((A)arg0).i)
return 1;
else if(this.i == ((A)arg0).i)
return 0;
else
return -1;
}
}
package com.zhoubo.concurrent.collection;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;
/**
* 对list中的对象排序,使用comparator
* @author Administrator
*
*/
public class OrderList {
/**
* @param args
*/
public static void main(String[] args) {
List list = new ArrayList();
list.add(new Aobject(1));
list.add(new Aobject(4));
list.add(new Aobject(2));
list.add(new Aobject(3));
list.add(new Aobject(3));
System.out.println(list);
Collections.sort(list,new Acomparator());
System.out.println(list);
}
}
class Aobject {
public int i = 0;
public Aobject(int ii) {
this.i = ii;
}
@Override
public String toString() {
return i+"";
}
}
class Acomparator implements Comparator{
@Override
public int compare(Object arg0, Object arg1) {
if(((Aobject)arg0).i >((Aobject)arg1).i){
return 1;
}else if(((Aobject)arg0).i ==((Aobject)arg1).i){
return 0;
}else
return -1;
}
}
分享到:
相关推荐
“EOC and Interrupt Operation”(转换结束和中断操作)部分阐述了当ADC完成一次转换后如何生成中断信号,这对于实时控制系统而言非常重要,它能够及时通知处理器处理新转换的数据。另外,文档也详细说明了ADC的...
教你学会Comparator和Comparable
标题与描述均提到了“程序实现时间排序Comparator”,这表明文章的主题是关于如何在Java编程环境中使用`Comparator`接口来实现基于时间的排序。在Java中,`Comparator`是一个功能强大的工具,允许开发者自定义对象的...
Java中的Comparator接口是排序的关键工具,它允许程序员自定义对象的比较规则,从而在集合、数组或树结构(如TreeSet、TreeMap)中实现定制化的排序。在Java的Collections框架中,Comparator扮演着重要的角色,特别...
Comparator是一款专为IT专业人士设计的文件比对工具,它的主要功能是进行文件内容的比较,并生成详细的对比报告。这个工具支持多种文件格式,包括ITD(可能是特定的项目文档格式)、DOC(Microsoft Word文档)以及...
### TMS320x2802x, 2803x Piccolo Analog-to-Digital Converter and Comparator Reference Guide #### 概述 本文档是关于TMS320x2802x和2803x Piccolo系列数字信号处理器(DSP)中的模拟到数字转换器(ADC)及比较...
在Java编程语言中,排序是数据处理中一个非常常见的需求,而`Comparator`和`Comparable`接口则是实现排序的关键工具。这两个接口都是用于比较对象,但它们的应用场景和使用方式有所不同。 首先,`Comparable`接口是...
在Java编程中,`Comparator`接口是一个非常重要的工具,它允许我们自定义对象的排序规则。这个接口在处理集合类,如`ArrayList`、`TreeSet`或`PriorityQueue`时,尤其有用,当我们需要根据特定的标准进行排序,而...
Comparator接口与Comparable接口的区别 Comparator接口与Comparable接口是Java语言中两个重要的接口,它们都是用于比较和排序自定义类的对象的大小的。虽然它们两个都是用于比较的接口,但是它们有着不同的实现方式...
在Java编程中,`Comparator`接口是用于比较对象的关键工具,尤其在进行自定义排序时。这个接口提供了`compare()`方法,根据特定的规则来决定两个对象的相对顺序。当需要根据多个排序条件对集合进行排序时,可以使用...
### Comparable与Comparator的区别详解 #### 一、引言 在Java编程中,为了对自定义对象进行排序,Java提供了两种接口:`Comparable`与`Comparator`。这两种接口各有优势,适用于不同的场景。本文将深入探讨这两种...
### Comparator 排序器 #### 简介 在Java编程语言中,`Comparator`接口是一种非常实用且灵活的工具,用于控制对象的排序方式。它允许开发人员自定义对象的比较逻辑,从而实现对集合(如`List`)中的元素进行排序。...
在Java编程语言中,排序是常见的操作,而`Comparable`和`Comparator`接口则是实现对象排序的两种主要方式。这篇文章将深入探讨这两种实现方式及其在实际编程中的应用。 首先,`Comparable`接口位于`java.lang`包下...
当需要对`List`中的对象进行自定义排序时,`Comparator`接口就派上了用场。`Comparator`是一个可以比较两个对象的类,它提供了一种方式来定义自定义的比较规则,从而实现灵活的排序逻辑。 `Comparator`接口位于`...
在 Java 中,Comparator 和 Comparable 是两个非常重要的接口,它们用于对象的排序操作。这两个接口都是在 java.util 包中定义的,主要用于定制排序规则。 **一、Comparator 接口** Comparator 接口允许我们创建...
在Java编程语言中,Comparable和Comparator接口是两个重要的概念,它们都用于对象的排序,但有着不同的使用场景和特点。本文将深入探讨这两个接口的区别,以及它们在实际开发中的应用。 首先,我们来了解一下...
本压缩包“json_comparator_jar.zip”提供了一个JSON比较工具,帮助开发者在Java环境下快速对比两个JSON对象或文件的差异。 该工具的关键在于,它能够解析并理解JSON格式的数据,然后进行深度比较,找出两者之间的...
This software shows the necessary configuration to use Comparator0 as a reset source.
在Java编程语言中,`Comparator`接口用于自定义对象的排序规则。`String`, `number`以及`String+number`的`Comparator`排序涉及到如何按照特定逻辑比较字符串、数字以及字符串与数字组合的对象。这篇博客文章(链接...