Eclipse里新建java工程,run as 一下以下code就知道区别了.
package src.com.test;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.TreeMap;
public class CompareMap {
private static List list = null;
private static int size = 3;
public List CreateList1(){
List lt1 = new ArrayList();
Map hm = null;
for(int i=0;i<size;i++){
hm = new HashMap();
hm.put("dd", "dd"+i);
hm.put("bb", "bb"+i);
hm.put("cc", "cc"+i);
hm.put("aa", "aa"+i);
hm.put("ee", "ee"+i);
lt1.add(hm);
}
return lt1;
}
public List CreateList2()throws ClassCastException{
List lt2 = new ArrayList();
Map tm = null;
for(int i=0;i<size;i++){
tm = new TreeMap();
tm.put("dd", "dd"+i);
tm.put("bb", "bb"+i);
tm.put("cc", "cc"+i);
tm.put("aa", "aa"+i);
tm.put("ee", "ee"+i);
lt2.add(tm);
}
return lt2;
}
/**
* @param args
* @throws IllegalAccessException
* @throws InstantiationException
*/
public static void main(String[] args){
// TODO Auto-generated method stub
CompareMap cm =new CompareMap();
System.out.println("-----------HaspMap------------");
List list1 = (List)cm.CreateList1();
Map hm = null;
for(int i=0;i<list1.size();i++){
hm = (HashMap)list1.get(i);
System.out.println(hm.toString());
}
System.out.println("-----------TreeMap------------");
List list2 = (List)cm.CreateList2();
Map tm = null;
for(int i=0;i<list2.size();i++){
tm = (TreeMap)list2.get(i);
System.out.println(tm.toString());
}
}
}