一个list有两种类型的对象,今天有需求必须责令不同的约会对象,这里是代码

/**

*@author xh1991101@163.com

*/

List<Message> messages=messageSrv.getList(u.getUserId());

List<Object> messageList=new ArrayList<Object>();

for(Object o:messages){

messageList.add(o);

}

for(Object o:checks){

messageList.add(o);

}

Collections.sort(messageList,  new Comparator(){

public int compare(Object o1, Object o2) {

if(o1 instanceof Message && o2 instanceof Message){

Message m=(Message) o1;

Message m2=(Message) o2;

if(m.getMessageDate().after(m2.getMessageDate()))

return 1;

if(m.getMessageDate().equals(m2.getMessageDate()))

return 0;

if(m.getMessageDate().before(m2.getMessageDate()))

return -1;

}else if(o1 instanceof CheckRecord && o2 instanceof Message){

CheckRecord m=(CheckRecord) o1;

Message m2=(Message) o2;

if(m.getCdate().after(m2.getMessageDate()))

return 1;

if(m.getCdate().equals(m2.getMessageDate()))

return 0;

if(m.getCdate().before(m2.getMessageDate()))

return -1;

}else if(o1 instanceof CheckRecord && o2 instanceof CheckRecord){

CheckRecord m=(CheckRecord) o1;

CheckRecord m2=(CheckRecord) o2;

if(m.getCdate().after(m2.getCdate()))

return 1;

if(m.getCdate().equals(m2.getCdate()))

return 0;

if(m.getCdate().before(m2.getCdate()))

return -1;



}else if(o1 instanceof Message && o2 instanceof CheckRecord){

Message m=(Message) o1;

CheckRecord m2=(CheckRecord) o2;

if(m.getMessageDate().after(m2.getCdate()))

return 1;

if(m.getMessageDate().equals(m2.getCdate()))

return 0;

if(m.getMessageDate().before(m2.getCdate()))

return -1;

}

return 0;

}

写个日志不easy。转载请注明资源:http://blog.csdn.net/xh199110  谢谢

版权声明:本文博客原创文章,博客,未经同意,不得转载。

java它们的定义ArrayList序列, 大神跳跃的更多相关文章

  1. 【推荐】Java工程师如何从普通成为大神值得一读

    本文源自 http://www.hollischuang.com/archives/489 一点感悟 java作为一门编程语言,在各类编程语言中作为弄潮儿始终排在前三的位置,这充分肯定了java语言的 ...

  2. java从零到变身爬虫大神(一)

    学习java3天有余,知道一些基本语法后 学习java爬虫,1天后开始出现明显效果 刚开始先从最简单的爬虫逻辑入手 爬虫最简单的解析面真的是这样 import org.jsoup.Jsoup; imp ...

  3. java从零到变身爬虫大神

    刚开始先从最简单的爬虫逻辑入手 爬虫最简单的解析面真的是这样 import org.jsoup.Jsoup; import org.jsoup.nodes.Document; import java. ...

  4. 关于Java8 Stream流的利与弊 Java初学者,大神勿喷

    题目需求: 1:第一个队伍只要名字为3个字成员的姓名,存储到新集合 2:第一个队伍筛选之后只要前3人:存储到一个新集合 3:第2个队伍只要姓张的成员姓名:存储到一个新集合 4:第2个队伍不要前2人,存 ...

  5. 交流希望希望能得到一些大神的指点,加QQ群:249627436 java技术交流群

    查了好多资料,发现还是不全,干脆自己整理吧,至少保证在我的做法正确的,以免误导读者,也是给自己做个记录吧! 本人学习java,1年多,对一些基本技巧已掌握.为了使自己能力晋升建了一个QQ群:java交 ...

  6. java数据类型易错点简单总结,欢迎大神前辈补充!谢谢

    数据类型那这边看似简单,花了我很长时间也就是才练到几成"功力"吧.还希望路过的大神在下面补充,菜鸟的我深受感谢! 首先看两个思考题 思考题1:请问下面这个有没有问题 double ...

  7. java大神进阶之路

    既然励志在java路上走的更远,那就必须了解java的路径.先看图 更加细化的细节如下 一: 编程基础 不管是C还是C++,不管是Java还是PHP,想成为一名合格的程序员,基本的数据结构和算法基础还 ...

  8. 一个4年工作经验的java程序员的困惑,怎样才能能为一个架构师,请教大神

    一个4年工作经验的java程序员的困惑,怎样才能能为一个架构师 LZ本人想往架构师发展, 业余时间也会看一些书籍, 但是感觉没有头绪, 有些书看了,也没有地方实践 我做了4年的java开发, 在一个公 ...

  9. 【BigData】Java基础_定义工具类,对ArrayList排序并且求最大值、最小值、平均值

    需求描述 编写一个工具类,对ArrayList实现以下功能: ① 排序 ② 求最大值 ③ 求最小值 ④ 求平均值 需求实现 实现代码 package cn.test.logan.day04; impo ...

随机推荐

  1. nodejs+socket.io即时聊天实例

    在这之前你应该先安装好 Node.js,安装过程不再讲解 首先在你的电脑上创建一个新目录,姑且命名为 chat,然后在该目录创建两个文件,分别是 app.js 和 index.html. app.js ...

  2. ubuntu14操作系统chrome标签和书签乱码解决

    ubuntu操作系统更新后.发现chrome标签和书签中文都无法显示. 解决的方法: 打开配置文件 sudo vim /etc/fonts/conf.d/49-sansserif.conf <! ...

  3. 在VC下显示JPEG、GIF格式图像的一种简便方法

    在VC下显示JPEG.GIF格式图像的一种简便方法 一. 引言  JPEG图像压缩标准随然是一种有损图像压缩标准,但由于人眼视觉的不敏感,经压缩后的画质基本没有发生变化,很快便以较高的压缩率得到了广泛 ...

  4. Lucene.Net 2.3.1开发介绍 —— 二、分词(三)

    原文:Lucene.Net 2.3.1开发介绍 -- 二.分词(三) 1.3 分词器结构 1.3.1 分词器整体结构 从1.2节的分析,终于做到了管中窥豹,现在在Lucene.Net项目中添加一个类关 ...

  5. drupal进入不了后台时候的解决办法,作者使用drush方案,已验证

    drupal把正在用的主题不小心删了,怎么进后台? 方法一: 去variable表里把默认主题换了 方法二: ?q=user 登录到管理区,开启简洁连接使用user(网站根目录下面) admin/ap ...

  6. hdu 4715 Difference Between Primes 2013年ICPC热身赛A题 素数水题

    题意:给出一个偶数(不论正负),求出两个素数a,b,能够满足 a-b=x,素数在1e6以内. 只要用筛选法打出素数表,枚举查询下就行了. 我用set储存素数,然后遍历set里面的元素,查询+x后是否还 ...

  7. ThinkPhp学习01

    原文:ThinkPhp学习01 一.ThinkPHP的介绍           MVC  M - Model 模型                工作:负责数据的操作  V - View  视图(模板 ...

  8. 14.5.1 Resizing the InnoDB System Tablespace

    14.5.1 Resizing the InnoDB System Tablespace 本节描述如何增加或者减少InnoDB 系统表空间的大小 增加InnoDB 系统表空间的大小 最简单的方式增加I ...

  9. 网络知识汇总(2) - Linux下如何修改ip地址

    在Linux的系统下如何才能修改IP信息   以前总是用ifconfig修改,重启后总是得重做.如果修改配置文件,就不用那么麻烦了-   A.修改ip地址   即时生效:   # ifconfig e ...

  10. URAL 1056(树形DP)

    1056. Computer Net Time limit: 2.0 second Memory limit: 64 MB Background Computer net is created by ...