List中的数据按时间排序
https://blog.csdn.net/zhangjiahao7521/article/details/83961733
使用sql语句很简单,order by就完了。java中需要实现一个Comparator比较器接口,然后调用Collections.sort方法。
Collections.sort(list, new TimeComparator())
参数1:需要排序的list
参数2:比较器,实现Comparator接口的类,返回一个int类型的值,相当于一个标志,告诉sort方法按照什么顺序来对list进行排序
下面一个实例转载自对List中每个对象元素按时间顺序排序
import java.text.SimpleDateFormat;
import java.util.*;
public class ListSort {
//定义一个实体
public static class UserBean {
private String id;
private String birthday;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getBirthday() {
return birthday;
}
public void setBirthday(String birthday) {
this.birthday = birthday;
}
}
//主程序
public static void main(String[] args) {
List<UserBean> list = new ArrayList<UserBean>();
UserListGenerate(list);
System.out.println("排序前:"+list);
ListSort(list);
System.out.println("排序后:"+list);
}
//未排序的原数据
private static void UserListGenerate(List<UserBean> list) {
UserBean user1 = new UserBean();
UserBean user2 = new UserBean();
UserBean user3 = new UserBean();
user1.setId("zhagnsan");
user1.setBirthday("1980-11-01");
user2.setId("lisi");
user2.setBirthday("1981-12-01");
user3.setId("wangwu");
user3.setBirthday("1980-12-01");
list.add(user1);
list.add(user2);
list.add(user3);
}
private static void ListSort(List<UserBean> list) {
Collections.sort(list, new Comparator<UserBean>() {
@Override
//定义一个比较器
public int compare(UserBean o1, UserBean o2) {
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
try {
Date dt1 = format.parse(o1.getBirthday());
Date dt2 = format.parse(o2.getBirthday());
if (dt1.getTime() > dt2.getTime()) {
return 1;
} else if (dt1.getTime() < dt2.getTime()) {
return -1;
} else {
return 0;
}
} catch (Exception e) {
e.printStackTrace();
}
return 0;
}
});
}
}
List中的数据按时间排序相关推荐
- 将集合中的内容按时间排序
/** * 将集合中的内容按时间排序 * @param list */ private static void ListSort(List<BossMsgInfo> list) { Col ...
- C#实现对指定文件夹中文件按修改时间排序
string path = "~/Document/Introduction/团队管理制度/"; DirectoryInfo dirinfo = new D ...
- matlab excel 排序,“如何用matlab处理多个excel表格中的数据“excel怎么排序
请问如何在matlab gui界面中插入excel表格并可进行编辑 最简单的方法,gui界面上一个table控件,放置两个按钮. 按钮名字分别改为打开和保存,table的属性里,把columnname ...
- python把数据按照时间排序,python中如何根据日期对数据进行排序
假设您的data.txt文件如下所示(我将其向右截断了一点): 457526373620277249 17644162 2014年4月19日星期六14:29:22+0000 0 45752254192 ...
- python中lambda函数对时间排序_python – 使用lambda函数排序()
我的字符串看起来像"co1 / co2","co3 / co4"--"co11 / co12" 将其描述为正则表达式: ^(?P\w\w)( ...
- mysql查询中,数据按拼音字母排序
如果表字段使用的GBK编码的话,我们可以直接order by value ,因为GBK本身就是按照拼音字母排序ABCDEFGHIGK...,当第一位相同的时候会比较第二位,以此类推. 如果表字段使用的 ...
- js 数据按时间排序
运用了sort()方法进行排序 说明 如果调用该方法时没有使用参数,将按字母顺序对数组中的元素进行排序,说得更精确点,是按照字符编码的顺序进行排序.要实现这一点,首先应把数组的元素都转换成字符串(如有 ...
- Java数据按照时间排序
一. import java.text.DateFormat; import java.util.Collections; import java.util.Comparator;List<Da ...
- 聚集表(clustered table)data page中的数据行可以无序
误区 一直以为只要一个表含有聚集索引,那么在data page中的数据行是排序的.比如原来data page中有1.2.4.5.6这样四条记录,那么我要插入3这条记录,应该是先将456三条记录往后移, ...
最新文章
- Java新手入门的30个基本概念
- 说说docker run的--detach
- 【bzoj4592】[Shoi2015]脑洞治疗仪
- 【转】 嵌入式C语言编程中Inline函数的应用
- 网络营销理论模型_网络营销:课堂笔记(第四章下)
- 【翻译】使用Ext JS设计响应式应用程序
- 咨询报告生成:使用python生成pptx格式的报告
- 中国制造2025变革,背后的大数据来龙去脉
- java按钮陷下去_付费?广告?捐款?如何让开源软件活下去?
- 只能是做的HTML5审批流项目
- JSON和JSONP的差别,以及用法
- 抢票加速包的钱都白花了?铁总:第三方抢票软件已被限制
- Cookie和Session实现记住我的功能
- 工业物联网再起云涌,大咖共叙破圈之道
- JAVA 并发编程实践 - 原子变量与非阻塞同步机制 笔记
- sql分页查询越往后越慢
- springboot 代码自动生成器
- Python 开发 利用SQLmap API接口进行批量的SQL注入检测.(SRC挖掘)
- 堆排序算法实现(最小堆)
- linux 配置vpn 客户端,mandriva下成功配置vpn客户端
热门文章
- TortoiseSVN小乌龟的使用(应该还比较全吧,可满足日常使用,含服务器端操作配置、含中文汉化版)
- 艺术系同学的“自画像“作业赏析(互动媒体技术作业)
- 权钱交易”已成为韩剧一个重要的主题!《不夜城》
- 未来智能手机完全不需要动手 现在的手机弱爆了
- 疯了!全网居然有人一次性把Java虚拟机HotSpot 给讲透彻了
- QuickTime Player + BlackHole解决Mac不能录内部声音
- Zuul(2、使用)
- github参与开源项目
- Android中dip和sp的真正区别
- 脊髓损伤后为什么会引起骨质疏松?