`
soundycui
  • 浏览: 84661 次
  • 性别: Icon_minigender_2
  • 来自: 深圳
社区版块
存档分类
最新评论

Comparator

    博客分类:
  • java
阅读更多
public class Student {
private String name;
private int age;
set/get 有参的构造方法
}
public class Comparator implements java.util.Comparator  {
private int compare(String a,String b){
// return a.compareTo(b);
return a.compareToIgnoreCase(b);
}
private int compare(int a,int b) { return a>b?(a<b?0:1):-1; }

@Override
public int compare(Object o1, Object o2) {
Student stu1 = (Student)o1;
Student stu2 = (Student)o2;
String name1 = stu1.getName();
String name2 = stu2.getName();
int age1 = stu1.getAge();
int age2 = stu2.getAge();
return (compare(name1, name2) == 0) ? (compare(age1, age2)) : (compare(
name1, name2));
}
}
public static void main(String[] args) {
Student p1 = new Student("aB", 4);  
Student p2 = new Student("b", 2);  
Student p3 = new Student("c", 1);  
Student p4 = new Student("ab", 1);  
Student p5 = new Student("aa", 6);  
Student p6 = new Student("aC", -1);

List<Student> list = new ArrayList<Student>();
list.add(p1);
list.add(p2);
list.add(p3);
list.add(p4);
list.add(p5);
list.add(p6);

Collections.sort(list, new Comparator());
Iterator<Student> it = list.iterator();
while(it.hasNext()){
Student stu = it.next();
System.out.println(stu.getName()+":"+stu.getAge());
}
}
分享到:
评论

相关推荐

    程序实现时间排序Comparator

    标题与描述均提到了“程序实现时间排序Comparator”,这表明文章的主题是关于如何在Java编程环境中使用`Comparator`接口来实现基于时间的排序。在Java中,`Comparator`是一个功能强大的工具,允许开发者自定义对象的...

    java Comparator 用法 例子

    Java中的Comparator接口是排序的关键工具,它允许程序员自定义对象的比较规则,从而在集合、数组或树结构(如TreeSet、TreeMap)中实现定制化的排序。在Java的Collections框架中,Comparator扮演着重要的角色,特别...

    Java中的Comparator 对多个排序条件的处理

    在Java编程中,`Comparator`接口是用于比较对象的关键工具,尤其在进行自定义排序时。这个接口提供了`compare()`方法,根据特定的规则来决定两个对象的相对顺序。当需要根据多个排序条件对集合进行排序时,可以使用...

    java排序Comparator和Comparable

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

    comparator接口与Comparable接口的区别

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

    Comparable&Comparator区别

    ### Comparable与Comparator的区别详解 #### 一、引言 在Java编程中,为了对自定义对象进行排序,Java提供了两种接口:`Comparable`与`Comparator`。这两种接口各有优势,适用于不同的场景。本文将深入探讨这两种...

    比较器Comparator简单用法

    在Java编程中,`Comparator`接口是一个非常重要的工具,它允许我们自定义对象的排序规则。这个接口在处理集合类,如`ArrayList`、`TreeSet`或`PriorityQueue`时,尤其有用,当我们需要根据特定的标准进行排序,而...

    Java中Comparable和Comparator 2种实现方式学习

    在Java编程语言中,排序是常见的操作,而`Comparable`和`Comparator`接口则是实现对象排序的两种主要方式。这篇文章将深入探讨这两种实现方式及其在实际编程中的应用。 首先,`Comparable`接口位于`java.lang`包下...

    java的Comparator和Comparable.docx

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

    List对象集合的排序:比较器Comparator(简单例子)

    当需要对`List`中的对象进行自定义排序时,`Comparator`接口就派上了用场。`Comparator`是一个可以比较两个对象的类,它提供了一种方式来定义自定义的比较规则,从而实现灵活的排序逻辑。 `Comparator`接口位于`...

    java中Comparable和Comparator的区别

    在Java编程语言中,Comparable和Comparator接口是两个重要的概念,它们都用于对象的排序,但有着不同的使用场景和特点。本文将深入探讨这两个接口的区别,以及它们在实际开发中的应用。 首先,我们来了解一下...

    json_comparator_jar.zip

    本压缩包“json_comparator_jar.zip”提供了一个JSON比较工具,帮助开发者在Java环境下快速对比两个JSON对象或文件的差异。 该工具的关键在于,它能够解析并理解JSON格式的数据,然后进行深度比较,找出两者之间的...

    String,number,String+number的Comparator排序

    在Java编程语言中,`Comparator`接口用于自定义对象的排序规则。`String`, `number`以及`String+number`的`Comparator`排序涉及到如何按照特定逻辑比较字符串、数字以及字符串与数字组合的对象。这篇博客文章(链接...

    class MyComparator implements Comparator类的算法 java

    在Java编程语言中,`Comparator`接口是一个非常重要的工具,它允许我们自定义对象的排序规则。`Comparator`可以用于任何实现了`Comparable`接口的类,或者当我们想要对不支持自然排序的对象进行排序时。标题提到的`...

    Comparator 排序器

    ### Comparator 排序器 #### 简介 在Java编程语言中,`Comparator`接口是一种非常实用且灵活的工具,用于控制对象的排序方式。它允许开发人员自定义对象的比较逻辑,从而实现对集合(如`List`)中的元素进行排序。...

    C8051F04X-Comparator0

    This software shows the necessary configuration to use Comparator0 as a reset source.

    TMS320x2802x, 2803x Piccolo Analog-to-Digital Converter (ADC) and Comparator.pdf

    其中的"Analog-to-Digital Converter (ADC)"指的是模数转换器,用于将模拟信号转换成数字信号,而“Comparator”是用于比较两个模拟信号并输出比较结果的器件。ADC和比较器在微控制器中起着至关重要的作用,尤其是...

    Python库 | number_comparator-0.0.3b1-py3-none-any.whl

    python库。 资源全名:number_comparator-0.0.3b1-py3-none-any.whl

Global site tag (gtag.js) - Google Analytics