- 浏览: 1229579 次
- 性别:
- 来自: 深圳
文章分类
- 全部博客 (718)
- HTML (13)
- JS基础 (23)
- JS应用 (40)
- AJAX (6)
- JSP相关 (12)
- JAVA基础 (52)
- JAVA应用 (74)
- APPLET (11)
- SWING\RCP (2)
- JAVA反射 (6)
- 设计模式 (26)
- 数据库设计 (20)
- Struts (35)
- Struts2 (12)
- Spring (22)
- Hibernate (45)
- Ibatis (18)
- mybatis (3)
- SSH (8)
- UML (5)
- WebService (3)
- XML (16)
- Log4j (7)
- WEB容器 (26)
- 数据结构 (36)
- Linux (34)
- Ruby on Rails (1)
- 其它技术 (27)
- IDE配置 (15)
- 项目实战 (2)
- Oracle (69)
- JAVA报表 (7)
- Android学习 (2)
- 博客链接 (1)
- 网络基础 (1)
- WEB集群 (1)
- .Net开发 (11)
- PB (4)
- 系统构建 (15)
最新评论
-
jnjeC:
牛逼啊哥们,讲得太好了
Maven仓库理解、如何引入本地包、Maven多种方式打可执行jar包 -
九尾狐的yi巴:
很好 感谢!
Itext中文处理(更新版) -
luweifeng1983:
有用的,重启一下嘛。
设置eclipse外部修改文件后自动刷新 -
Master-Gao:
设置了也不管用,怎么破呢?
设置eclipse外部修改文件后自动刷新 -
aigo_h:
锋子还有时间写博客,还是很闲哈!
Add directory entries问题
在java.util包中有一个Collections类,里面实现了对列表排序的功能,提供了一个静态方法sort方法,接收一个列表和一个Comparator接口的实例
实现的大致步骤如下:
1,先把列表转换为数组
2,通过Arrays的sort方法对数组排序,传入Comparator接口的实例
3,然后再把排好序的数组的数值设置到原来的列表对象中去
如果Comparator接口的compare方法返回一个小于0的数,表示被比较的两个对象中,前者小于后者
见下面的实例
要排序的对象:
排序的测试端 package collectionsSort;
//用户数据的模型
public class UserModel {
private String userName,userId;
private int age;
public String getUserName() {
return userName;
}
public String getUserId() {
return userId;
}
public int getAge() {
return age;
}
public UserModel(String userName, String userId, int age) {
this.userName = userName;
this.userId = userId;
this.age = age;
}
public String toString(){
return "userName="+userName+",userId="+userId+",age="+age;
}
}
package collectionsSort; import java.util.ArrayList; import java.util.Collections; import java.util.Comparator; import java.util.List; //直接使用Collections来排序 public class Client { public static void main(String[] args) { // 准备要测试的数据 UserModel um1 = new UserModel("u1","user1",21); UserModel um2 = new UserModel("u2","user2",24); UserModel um3 = new UserModel("u3","user3",25); UserModel um4 = new UserModel("u4","user4",22); //添加到列表中 List<UserModel> list = new ArrayList<UserModel>(); list.add(um1); list.add(um2); list.add(um3); list.add(um4); System.out.println("排序前-------------"); printList(list); //实现比较器,也可以单独用一个类来实现 Comparator c = new Comparator(){ @Override public int compare(Object arg0, Object arg1) { //这里实现按照用户年龄大小来排序 UserModel temp1 = (UserModel) arg0; UserModel temp2 = (UserModel) arg1; if(temp1.getAge()>temp2.getAge())return 1; else if(temp1.getAge()<temp2.getAge())return -1; else if(temp1.getAge()==temp2.getAge())return 0; return 0; } }; //排序,主要就是依靠Comparator接口的具体实现 Collections.sort(list,c); System.out.println("排序后-------------"); printList(list); } private static void printList(List<UserModel> list) { for(UserModel um:list){ System.out.println(um); } } }
发表评论
-
JVM内存管理及性能调优(内存溢出、内存泄漏)
2015-09-02 07:14 692JAVA内存管理(内存溢出、内存泄漏)相关参考: JA ... -
JAVA可变参数对重载的影响
2014-01-27 15:28 925package com.lwf.test; publi ... -
有关String类创建几个对象的问题
2013-07-09 23:18 1327试题一: String s = new String(& ... -
JDK1.5下实现JDK1.6的Arrays.copyOfRange() 方法
2012-08-29 10:59 1754public static void test(){ i ... -
JAVA四舍五入的处理
2012-02-11 10:47 1008如下,保留两个小数位 double f = 3 ... -
JAVA定时器使用
2011-08-19 11:05 772http://hualong.iteye.com/blog/5 ... -
JDK5.0 Annotation学习笔记
2011-07-26 22:48 744http://linliangyi2007.iteye.com ... -
JAVA CP命令
2010-12-31 11:51 10288java -cp .;c:\dir1\lib.jar Test ... -
JDK1.5的新特性及应用
2010-07-13 12:49 998以下两文: http://heaven-arch.iteye ... -
JAVA面试题150例
2010-05-19 11:44 2047一、Java基础方面 1、作用域public,priva ... -
《thinking in java》第四章:初始化与清理三
2010-05-19 00:21 774http://quicker.iteye.com/blog/5 ... -
JAVA编程思想第四版完整下载地址
2010-05-18 18:35 1256http://hi.baidu.com/yang1101190 ... -
JAVA多线程学习一
2010-04-13 17:21 923http://renyangok.iteye.com/blog ... -
JAVA常用误区整理
2008-01-09 13:12 9051、 float f=1.3;是不对的,编译时会出错,java ... -
try与finally块中return的问题
2008-12-05 14:37 1245针对以下情况进行测试: 情况1:try{} catch( ... -
简单克隆与深度克隆的思考
2008-12-19 16:44 1025白话简单克隆和深度克隆一文 http://blog.csd ... -
一道面试题引发的思考之:类的初始化
2008-12-29 16:23 709本人曾写过JAVA基础方面的blog,也是针对类的初始化的, ... -
JAVA基础学习篇----对象串行化及Transient关键字的使用
2009-01-08 18:07 0http://blog.csdn.net/scruffybea ... -
!JAVA学习提高之---- JAVA日期格式化及相关操作
2009-01-13 17:02 790http://blog.csdn.net/gubaohua/a ... -
JAVA学习提高之---- List toArray学到的
2009-01-19 16:34 680最近结合一个事例掌握到ArrayList 的方法toArray ...
相关推荐
标题与描述均提到了“程序实现时间排序Comparator”,这表明文章的主题是关于如何在Java编程环境中使用`Comparator`接口来实现基于时间的排序。在Java中,`Comparator`是一个功能强大的工具,允许开发者自定义对象的...
`Comparator<String>`的实现通常会覆盖`compare()`方法,其中两个`String`对象作为参数,返回值决定了它们的相对顺序。 其次,`number`的排序通常涉及到`Integer`, `Double`, `Float`等数值类型。在Java中,这些...
此外,由于`Comparator`允许传递多个实例,因此可以很容易地实现多级排序或其他更复杂的排序需求。 综上所述,`Comparator`接口为Java开发者提供了一种高效且灵活的方式来控制对象的排序顺序,使得数据管理变得更加...
在Java编程语言中,排序是数据处理中一个非常常见的需求,而`Comparator`和`Comparable`接口则是实现排序的关键工具。这两个接口都是用于比较对象,但它们的应用场景和使用方式有所不同。 首先,`Comparable`接口是...
当需要根据多个排序条件对集合进行排序时,可以使用多个`Comparator`组合的方式来实现。这篇博客文章"Java中的Comparator 对多个排序条件的处理"可能详细讨论了如何实现这一目标。 首先,`Comparator`的基本用法是...
JAVA使用Comparator接口实现自定义排序 JAVA中Comparator接口是Java Collections Framework中的一个重要接口,它提供了自定义排序的能力。通过实现Comparator接口,我们可以根据自己的需求来定义对象的排序规则。 ...
标准库提供了多种排序方式,其中一种是使用`Comparator`接口来实现自定义排序。本教程将深入探讨如何使用`Comparator`来实现对对象集合的定制排序。 `Comparator`接口位于`java.util`包下,它定义了一个方法`...
计算机后端-Java-Java核心基础-第22章 常用类 23. 使用Comparator实现定制排序.avi
`Comparator`是一个可以比较两个对象的类,它提供了一种方式来定义自定义的比较规则,从而实现灵活的排序逻辑。 `Comparator`接口位于`java.util`包中,它包含了一个方法`compare(T o1, T o2)`,这个方法需要比较两...
在Java 8之前,我们通常通过实现Comparator接口并重写`compare()`方法来创建自定义的比较器。例如: ```java inventory.sort(new Comparator() { public int compare(Apple a1, Apple a2){ return a1.getWeight()...
例如,可以使用Collections类的`sort()`方法,结合自定义Comparator实现排序逻辑。排序完成后,需通知Adapter数据已更新,通过调用`notifyDataSetChanged()`方法刷新ListView。 此外,"SecondAndroid"可能是指该...
java实现ArrayList根据存储对象排序功能示例主要介绍了java中ArrayList的排序功能,通过构建新的比较对象Comparator实现排序操作。本文将详细讲解java中ArrayList的相关运算和排序操作技巧,并提供了一个实例形式的...
在Java编程语言中,排序是常见的操作,而`Comparable`和`Comparator`接口则是实现对象排序的两种主要方式。这篇文章将深入探讨这两种实现方式及其在实际编程中的应用。 首先,`Comparable`接口位于`java.lang`包下...
Java中的Comparator接口是排序的关键工具,它允许程序员自定义对象的比较规则,从而在集合、数组或树结构(如TreeSet、TreeMap)中实现定制化的排序。在Java的Collections框架中,Comparator扮演着重要的角色,特别...
当需要按特定标准排序集合中的元素时,可以使用`Collections.sort()`方法或者自定义Comparator实现排序。 - **稳定性(order)**:在排序过程中,稳定性是指相等的元素在排序后相对位置不变。例如,如果有两个元素...
在Android中,可以使用Collections.sort()方法配合Comparator实现排序。 7. **UI设计**:Sidebar的设计风格应与整体应用保持一致,可能需要自定义Sidebar的样式和颜色。同时,城市列表项也需要进行设计,使其清晰易...
11. **排序算法**:Java中实现排序可以通过内置的Collections.sort()方法,或者自定义Comparator实现排序。序列化是将对象转换为字节流,便于存储和传输,需实现Serializable接口。 12. **JSP动态INCLUDE与静态...
在Java程序中,我们可以使用Collections.sort()方法结合自定义Comparator实现排序。 总的来说,"JAVA小程序-世界杯足球赛成绩统计"项目是一个典型的面向对象编程示例,涵盖了数据结构设计、对象间交互、数据库操作...
首先,我们创建了一个包含多个`Student`对象的ArrayList,然后利用`Collections.sort()`方法和自定义的Comparator实现排序。 1. `Collections.sort()`方法是Java集合框架提供的通用排序方法,它接受一个List和可选...