`

JDK中自带的排序类

    博客分类:
  • JAVA
 
阅读更多
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.Date;
import java.util.List;


class Student {
	private Integer id;
	public Integer getId() {
		return id;
	}
	public void setId(int id) {
		this.id = id;
	}
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public Date getBirth() {
		return birth;
	}
	public void setBirth(Date birth) {
		this.birth = birth;
	}
	private String name;
	private Date birth;
	
	public Student() {
		this.birth = new Date();
		this.id = 0;
		this.name = "";
	}
	
	public Student(int id, String name, Date birth) {
		this.id = id;
		this.name = name;
		this.birth = birth;
	}
	
	public String toString() {
		return "{id = " + id + ";name = " + name + ";birth = " + birth + "}";
	}
}

public class ComparatorTest {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		@SuppressWarnings("deprecation")
		Student s1 = new Student(001, "jim", new Date(1987, 9, 24));
		@SuppressWarnings("deprecation")
		Student s2 = new Student(003, "abc", new Date(1983, 9, 24));
		@SuppressWarnings("deprecation")
		Student s3 = new Student(002, "efe", new Date(1985, 9, 24));
		
		List<Student> list = new ArrayList<Student>();
		list.add(s1);
		list.add(s2);
		list.add(s3);
		System.out.println(list);
		Collections.sort(list, new Comparator<Student>() {

			@Override
			public int compare(Student o1, Student o2) {
				// TODO Auto-generated method stub
				
				return o1.getBirth().compareTo(o2.getBirth());
			}
			
		});
		System.out.println(list);
	}

}

 直接重载Comparator中的compare方法就OK啦。

分享到:
评论

相关推荐

    jdk1.8.0_91版本

    4. 调试与监控:利用JDK自带的JConsole、VisualVM等工具进行性能监控和问题排查。 总之,JDK 1.8.0_91是Java 8的一个重要版本,其特性如Lambda表达式、Stream API和新的日期时间API极大地提升了Java的生产力和代码...

    java集合某个字段按照中文拼音排序.docx

    但是,需要注意的是,JDK自带的Collator类可能不能正确地排序一些生僻的姓氏,因此我们可以使用IBM的ICU4J库,该库提供了更好的中文拼音排序功能。 ```java import com.ibm.icu.text.Collator; List&lt;String&gt; list ...

    jdk.18.rar

    3. **开发工具**:介绍JDK自带的各种开发工具,如javac编译器、javadoc文档生成器、jconsole性能监视工具等。 4. **性能和调优指南**:提供关于如何优化Java应用程序的建议和最佳实践。 5. **故障排除**:提供解决...

    JDK1.7 64位(保存一下)

    `jmap`、`jstack`等JDK自带的诊断工具也得到了增强,帮助开发者更好地理解和调试Java程序。 安装JDK1.7 64位版时,你需要确保你的操作系统是64位的,然后解压提供的压缩包文件"JDK1.7.0_64位"。通常,安装过程包括...

    win64-jdk8.txt

    - JDK8提供了一个全新的日期时间API,该API位于`java.time`包中,包括`LocalDate`、`LocalTime`、`LocalDateTime`等类,这些类的设计更合理,避免了旧版API中的问题,并且提供了更强大的功能支持。 ##### 3. ...

    Java 高并发六:JDK并发包2详解

    JDK的并发包提供了丰富的工具类和接口,使得开发者能够有效地管理并发任务。在本文中,我们将深入探讨Java高并发下的线程池和ForkJoin框架。 线程池是Java并发编程中的重要概念,它解决了频繁创建和销毁线程的开销...

    jdk-8u341-windows-x64.exe

    安装完成后,开发者可以通过`javac`命令进行Java源代码的编译,通过`java`命令执行字节码文件,还可以使用JDK自带的其他工具,如`javadoc`生成文档,`jar`打包和管理归档文件,以及`jmap`、`jconsole`等诊断工具进行...

    数组总结(概念、定义、默认值、可变长参数、值传递与引用传递等)

    数组总结(概念、定义、默认值、可变长参数、值传递与引用传递等)。1.冒泡排序: ​ 两两相比(两个相邻的数进行比较) 条件成立 互换位置 ​ 外层循环控制比较的轮数 **轮数...3.JDK自带的排序 Arrays.sort();方法

    Java6中自带的JavaDB(derby)数据库.pdf

    Sun Microsystems在JDK 6中集成Derby 10.2.2版本,极大地简化了Java开发者使用数据库的流程。以往,程序员需要花费时间安装和配置独立的数据库服务器,而Java DB的内嵌模式则允许开发者直接在应用程序内部使用数据库...

    最核心的部分 —— 类集

    例如,JDK自带的JVisualVM和VisualGC可以帮助开发者分析类集的内存占用和性能,找出可能的内存泄漏或性能瓶颈。此外,IDE中的调试工具也能帮助开发者跟踪集合的变化,理解程序运行过程。 在实际开发中,选择合适的...

    Java高级面试题附答案汇总(2021年Java面试题及答案大全)

    JDK自带的监控和性能分析工具是Java高级面试题中的一大热点。包括jps、jstat、jmap、jstack、jhsdb等。jps用来显示Java进程;jstat用来查看GC;jmap用来dump堆;jstack用来dump栈;jhsdb用来查看执行中的内存信息。

    leetcode分类-algorithm:基本算法归集,主要来源于CLRS《算法导论》,*Algo.java主要对应各个算法的实现,*Test

    通用测试类,支持多种数据类型,支持2份相同数组的排序比较(与JDK自带J.U.A的Arrays.sort算法进行对比) 子类需要重载showtime方法来实现具体的排序 yuanjun.chen.base.sort.BubbleSortAlgo.java 冒泡排序实现类,...

    Java Collections 作者 APress

    7. 集合框架的扩展:除了JDK自带的集合类,开发者还可以创建自己的集合类。通过继承和实现标准集合接口,可以创建具有特定功能的集合类。 8. 使用API示例:本书还提供了一系列扩展API的例子,这些示例展示了如何在...

    大工软院大二姜国海小学期-第一次作业要求.zip

    1. 发现错误并改错。给出一个实现插入排序的程序,文件名为...禁止使用JDK自带的Base64转换程序以及Apache开源网站上的程序, 必须自己编写代码来实现BASE64编码和解码函数。可以为该类添加其他数据成员和函数成员。

    Java小假期第一次作业

    1. 发现错误并改错。给出一个实现插入排序的程序,文件名为...禁止使用JDK自带的Base64转换程序以及Apache开源网站上的程序, 必须自己编写代码来实现BASE64编码和解码函数。可以为该类添加其他数据成员和函数成员。

    Hadoop 分布式部署配置及基准性能测试

    接下来进行DFSIO基准测试,这是Hadoop自带的读写性能测试工具。通过`hadoop fs -test -d /testdir`创建测试目录,然后运行`hadoop distcp /dev/null /testdir`填充数据。最后,使用`hadoop fs -du -s /testdir`和`...

    Java集合容器面试题(2020最新版)陆小马功钟浩.pdf

    通过使用JDK自带的集合类,可以降低代码维护的难度,学习新API的成本也会相对较低。 在面试过程中,对Java集合框架的理解程度是衡量一个程序员对Java集合类库掌握熟练程度的重要指标。了解集合框架的原理、特点、...

    Java 72 道面试题及答案.docx

    - **API易用性**:JDK自带的集合类降低了开发成本和学习新API的难度。 理解这些核心知识点对于Java开发者来说至关重要,因为集合框架是日常开发中不可或缺的一部分。熟练掌握这些概念和使用技巧,将能够更好地设计...

Global site tag (gtag.js) - Google Analytics