一维List转换为二维数组

来源:互联网 发布:古典音乐 知乎 编辑:程序博客网 时间:2024/04/30 10:03
package com.util;import java.util.Comparator;public class ComparatorTime implements Comparator<String> {@Overridepublic 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;}}


0 1
原创粉丝点击