工作上遇到一个要求两个不同list对象合并后并排序
1、问题描述
从数据库中查询两张表的当天数据,并对这两张表的数据,进行合并,然后根据时间排序。
2、思路
从数据库中查询到的数据放到各自list中,先遍历两个list,存到主list中,然后根据各自list的对象属性time属性排序。
3、需要技术
Java API针对集合类型排序提供了两种支持:
Java.util.Collections.sort(java.util.List)
Java.util.Collections.sort(java.util.List, java.util.Comparator)
第一个方法要求所排序的元素类必须实现java.lang.Comparable接口。
第二个方法要求实现一个java.util.Comparator接口。
这两个接口不但可以用于集合元素排序,还可以用于数组排序。如果数组或集合元素是String类型,则可以利用JavaAPIComparator对象String.CASE_INSENSITIVE_ORDER为容器元素排序。
代码演示
public class Bill { private Integer id ; private String card ; private String money ; private Timestamp conDateTime ; public Integer getId() { return id; } public void setId(Integer id) { this.id = id; } public String getCard() { return card; } public void setCard(String card) { this.card = card; } public String getMoney() { return money; } public void setMoney(String money) { this.money = money; } public Timestamp getConDateTime() { return conDateTime; } public void setConDateTime(Timestamp conDateTime) { this.conDateTime = conDateTime; } }