package com.util;
import java.util.Comparator;
public class ComparatorTime implements Comparator<String> {
@Override
public int compare(String arg0, String arg1) {
int flag = arg0.compareTo(arg1);
return flag;
}
public static void main(String[] args) {
String a ="2014";
String b = "2013Q3";
System.out.println(a.compareTo(b));
}
}
package com.util;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import com.demo.A;
public class Util {
public static List<A> lists = null;
public static void main(String[] args) {
Map<String,List<A>> timeMap = new HashMap<String,List<A>>();
List<A> as = getList();
List<String> staticTimeList = new ArrayList<String>();
for(A a:as){
String staticTime = a.getStaticTime();
List<A> alist = timeMap.get(a.getStaticTime());
if(alist==null){
alist = new ArrayList<A>();
timeMap.put(staticTime, alist);
staticTimeList.add(staticTime);
}
alist.add(a);
}
sort(staticTimeList);
Map<Integer,List<A>> dataMap = new HashMap<Integer,List<A>>();
List<Integer> indexIDList = new ArrayList<Integer>();
for(A a:as){
Integer indexID = a.getIndexID();
List<A> alist = dataMap.get(indexID);
if(alist==null){
alist = new ArrayList<A>();
dataMap.put(indexID, alist);
indexIDList.add(indexID);
}
alist.add(a);
}
int indexSize = indexIDList.size();
int timeSize = staticTimeList.size();
String[] timeArr = list2array(staticTimeList);
Double[][] data = new Double[indexSize][timeSize];
for(int i=0;i<indexSize;i++){
for(int t=0;t<timeSize;t++){
data = null;
}
}
int i=0;
for(Integer indexID:indexIDList){
List<A> alist = dataMap.get(indexID);
for(int t=0;t<timeSize;){
for(A a:alist){
if(a.getStaticTime().equals(timeArr[t])){
data[i][t] = a.getValue();
continue;
}
}
t++;
}
i++;
}
System.out.println("end");
}
public static List<A> getList(){
if(lists==null){
lists = new ArrayList<A>();
for(int i=2;i<102;i++){
A a = new A(i%10, "200"+(i%9) , i);
lists.add(a);
}
}
return lists;
}
public static List<String> sort(List<String> staticTimeList){
ComparatorTime comparator = new ComparatorTime();
Collections.sort(staticTimeList, comparator);
return staticTimeList;
}
public static String[] list2array(List<String> list){
String[] arr = (String[])list.toArray(new String[list.size()]);
return arr;
}
}
package com.demo;
public class A {
int indexID;
String staticTime;
double value;
public A(int indexID, String staticTime, double value) {
super();
this.indexID = indexID;
this.staticTime = staticTime;
this.value = value;
}
public int getIndexID() {
return indexID;
}
public void setIndexID(int indexID) {
this.indexID = indexID;
}
public String getStaticTime() {
return staticTime;
}
public void setStaticTime(String staticTime) {
this.staticTime = staticTime;
}
public double getValue() {
return value;
}
public void setValue(double value) {
this.value = value;
}
}