现在有两组数据集合list<DataEntity>
public class DataEntity{
private Long id;
private String name;
private Double value;
private Date date;
.....
}
一组为:
+----+----------+-------+------------+
| id | name | value1| date |
+----+----------+-------+------------+
| 1 | 北京大厦 | 12 | 2009-09-01 |
| 2 | 北京大厦 | 10 | 2009-09-02 |
| 3 | 北京大厦 | 11 | 2009-09-03 |
| 4 | 北京大厦 | 14 | 2009-09-04 |
| 13 | 南京大厦 | 14 | 2009-09-01 |
| 14 | 南京大厦 | 16 | 2009-09-02 |
| 15 | 南京大厦 | 18 | 2009-09-03 |
| 16 | 南京大厦 | 10 | 2009-09-04 |另一组为:
+----+----------+-------+------------+
| id | name | value2| date |
+----+----------+-------+------------+
| 1 | 北京大厦 | 13 | 2009-09-01 |
| 2 | 北京大厦 | 12 | 2009-09-02 |
| 3 | 北京大厦 | 14 | 2009-09-03 |
| 4 | 北京大厦 | 11 | 2009-09-04 |
| 13 | 南京大厦 | 14 | 2009-09-01 |
| 14 | 南京大厦 | 15 | 2009-09-02 |
| 15 | 南京大厦 | 17 | 2009-09-03 |
| 16 | 南京大厦 | 10 | 2009-09-04 |写一个方法按照时间对应关系得到
+----+----------+-------+------------+
| id | name |value1/value2| date |
+----+----------+-------+------------+
| 1 | 北京大厦 | 12/13 | 2009-09-01 |
| 2 | 北京大厦 | 10/11 | 2009-09-02 |
| 3 | 北京大厦 | 11/14 | 2009-09-03 |
| 4 | 北京大厦 | 14/11 | 2009-09-04 |
| 13 | 南京大厦 | 14/14 | 2009-09-01 |
| 14 | 南京大厦 | 16/15 | 2009-09-02 |
| 15 | 南京大厦 | 18/17 | 2009-09-03 |
| 16 | 南京大厦 | 10/10 | 2009-09-04 |急用,请大家多帮忙,非常感谢!!!
public class DataEntity{
private Long id;
private String name;
private Double value;
private Date date;
.....
}
一组为:
+----+----------+-------+------------+
| id | name | value1| date |
+----+----------+-------+------------+
| 1 | 北京大厦 | 12 | 2009-09-01 |
| 2 | 北京大厦 | 10 | 2009-09-02 |
| 3 | 北京大厦 | 11 | 2009-09-03 |
| 4 | 北京大厦 | 14 | 2009-09-04 |
| 13 | 南京大厦 | 14 | 2009-09-01 |
| 14 | 南京大厦 | 16 | 2009-09-02 |
| 15 | 南京大厦 | 18 | 2009-09-03 |
| 16 | 南京大厦 | 10 | 2009-09-04 |另一组为:
+----+----------+-------+------------+
| id | name | value2| date |
+----+----------+-------+------------+
| 1 | 北京大厦 | 13 | 2009-09-01 |
| 2 | 北京大厦 | 12 | 2009-09-02 |
| 3 | 北京大厦 | 14 | 2009-09-03 |
| 4 | 北京大厦 | 11 | 2009-09-04 |
| 13 | 南京大厦 | 14 | 2009-09-01 |
| 14 | 南京大厦 | 15 | 2009-09-02 |
| 15 | 南京大厦 | 17 | 2009-09-03 |
| 16 | 南京大厦 | 10 | 2009-09-04 |写一个方法按照时间对应关系得到
+----+----------+-------+------------+
| id | name |value1/value2| date |
+----+----------+-------+------------+
| 1 | 北京大厦 | 12/13 | 2009-09-01 |
| 2 | 北京大厦 | 10/11 | 2009-09-02 |
| 3 | 北京大厦 | 11/14 | 2009-09-03 |
| 4 | 北京大厦 | 14/11 | 2009-09-04 |
| 13 | 南京大厦 | 14/14 | 2009-09-01 |
| 14 | 南京大厦 | 16/15 | 2009-09-02 |
| 15 | 南京大厦 | 18/17 | 2009-09-03 |
| 16 | 南京大厦 | 10/10 | 2009-09-04 |急用,请大家多帮忙,非常感谢!!!
table1 t1,table2 t2 where t1.name=t2.name and t1.date=t2.date
private long id;
private String name;
private String value;
private String date;
public DataEntity(long id,String name,String value,String date){
this.id=id;
this.name=name;
this.value=value;
this.date=date;
}
public long getId() {
return id;
} public String getName() {
return name;
} public String getValue() {
return value;
} public String getDate() {
return date;
}
public void setId(long id) {
this.id = id;
}
public void setName(String name) {
this.name = name;
}
public void setValue(String value) {
this.value = value;
}
public void setDate(String date) {
this.date = date;
}
}测试类:import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Set;
public class Test{
public static void main(String[] args){
List <DataEntity> listA=new ArrayList<DataEntity>();
listA.add(new DataEntity(1,"北京大厦","12","2009-09-01"));
listA.add(new DataEntity(2,"北京大厦","10","2009-09-02"));
listA.add(new DataEntity(3,"北京大厦","11","2009-09-03"));
listA.add(new DataEntity(4,"北京大厦","14","2009-09-04"));
listA.add(new DataEntity(13,"南京大厦","14","2009-09-01"));
listA.add(new DataEntity(14,"南京大厦","16","2009-09-02"));
listA.add(new DataEntity(15,"南京大厦","18","2009-09-03"));
listA.add(new DataEntity(16,"南京大厦","10","2009-09-04"));
List <DataEntity> listB=new ArrayList<DataEntity>();
listB.add(new DataEntity(1,"北京大厦","13","2009-09-01"));
listB.add(new DataEntity(2,"北京大厦","12","2009-09-02"));
listB.add(new DataEntity(3,"北京大厦","14","2009-09-03"));
listB.add(new DataEntity(4,"北京大厦","11","2009-09-04"));
listB.add(new DataEntity(13,"南京大厦","14","2009-09-01"));
listB.add(new DataEntity(14,"南京大厦","15","2009-09-02"));
listB.add(new DataEntity(15,"南京大厦","17","2009-09-03"));
listB.add(new DataEntity(16,"南京大厦","10","2009-09-04"));
Map<Long,DataEntity> map=new HashMap<Long,DataEntity>();
for(DataEntity ob:listA){
map.put(ob.getId(),ob);
}
for(DataEntity ob:listB){
if(!map.containsKey(ob.getId())){
map.put(ob.getId(),ob);
}else{
ob.setValue(map.get(ob.getId()).getValue()+"/"+ob.getValue());
map.put(ob.getId(),ob);
}
}
Set<Long> set=map.keySet();
System.out.println("id"+" "+"name"+" "+"value"+" "+"date");
for(Long id: set){
System.out.println(id+" "+map.get(id).getName()+" "+map.get(id).getValue()+" "+map.get(id).getDate());
}
}
}结果:
id name value date
1 北京大厦 12/13 2009-09-01
2 北京大厦 10/12 2009-09-02
3 北京大厦 11/14 2009-09-03
4 北京大厦 14/11 2009-09-04
13 南京大厦 14/14 2009-09-01
14 南京大厦 16/15 2009-09-02
15 南京大厦 18/17 2009-09-03
16 南京大厦 10/10 2009-09-04