输出格式按excel格式输出
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
public class List2Report {
public static void main(String[] args) {
List<CarProductModel> list = new ArrayList<CarProductModel>();
CarProductModel carProductModelBean = new CarProductModel(1, "深圳", "粤A");
list.add(carProductModelBean);
carProductModelBean = new CarProductModel(1, "深圳", "京A");
list.add(carProductModelBean);
carProductModelBean = new CarProductModel(2, "南京", "桂A");
list.add(carProductModelBean);
carProductModelBean = new CarProductModel(1, "拉萨", "桂A");
list.add(carProductModelBean);
carProductModelBean = new CarProductModel(1, "武汉", "桂B");
list.add(carProductModelBean);
carProductModelBean = new CarProductModel(1, "西安", "桂B");
list.add(carProductModelBean);
carProductModelBean = new CarProductModel(1, "南京", "桂B");
list.add(carProductModelBean);
carProductModelBean = new CarProductModel(1, "深圳", "京C");
list.add(carProductModelBean);
ArrayList<String> departs = new ArrayList<String>();
for (CarProductModel carProductModel : list) {
if (departs.indexOf(carProductModel.getDepartName()) < 0) {
departs.add(carProductModel.getDepartName());
}
}
HashMap<String, String[]> rowsMap = new HashMap<String, String[]>();
String departName = null;
String carNo = null;
String nums[] = null;
int curIndex = 0;
for (CarProductModel carProductModel : list) {
departName = carProductModel.getDepartName();
curIndex = departs.indexOf(departName);
if (curIndex < 0) {
curIndex = 0;
}
carNo = carProductModel.getCarNoShortName();
nums = rowsMap.get(carNo);
if (nums == null) {
nums = new String[departs.size()];
rowsMap.put(carNo, nums);
}
nums[curIndex] = String.valueOf(carProductModel.getCarNoNum());
}
System.out.println(departs);
System.out.println(rowsMap);
System.out.print("\t");
for (String depart : departs) {
System.out.print(depart + "\t");
}
System.out.println();
Iterator<String> rowsMapIt = rowsMap.keySet().iterator();
while (rowsMapIt.hasNext()) {
String key = rowsMapIt.next();
System.out.print(key + "\t");
String[] str = rowsMap.get(key);
for (int i = 0; i < str.length; i++) {
if (str[i] != null) {
System.out.print(str[i] + "\t");
} else {
System.out.print("\t");
}
}
System.out.println();
}
}
}
class CarProductModel {
private int carNoNum;
private String departName;
private String carNoShortName;
public CarProductModel(int carNoNum, String departName, String carNoShortName) {
this.carNoNum = carNoNum;
this.departName = departName;
this.carNoShortName = carNoShortName;
}
public int getCarNoNum() {
return carNoNum;
}
public void setCarNoNum(int carNoNum) {
this.carNoNum = carNoNum;
}
public String getDepartName() {
return departName;
}
public void setDepartName(String departName) {
this.departName = departName;
}
public String getCarNoShortName() {
return carNoShortName;
}
public void setCarNoShortName(String carNoShortName) {
this.carNoShortName = carNoShortName;
}
}
输出结果:
只需要原样导出到excel或者写到页面即可