今晚做了一个小实验,比较两个add相同数据所花时间比
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
// List<Cat> l=new LinkedList<Cat>();
List<Cat> l=new ArrayList<Cat>();
long start=System.currentTimeMillis();
System.out.println("开始时间:"+start);
for(long i=0;i<5990000;i++){
l.add(new Cat(i));
}
long end=System.currentTimeMillis();
System.out.println("结束时间:"+end);
System.out.println("总用时间:"+(end-start));
}
都说前者插入慢,通过这个小例子
并没有看出前者比后者慢,相反前者比后者还快不少,求高手指教
关于hashtable与hashmap的区别
1:hashtable继承的是Dictionary抽象类,hashtable 实现Map接口,但是Dictionary没有实现map接口,hashmap继承的是AbstractMap,并且都有实现map接口,
2:hashtable中的get,put,putAll,remove等方法为synchronized方法,而hashmap不是
3:hashtable不允许key或者value为null,但是hashmap可以有一个key为null,可以多个value为null,
以上是个人通过网上学习和阅读源码所总结,如有雷同,纯属巧合,另外可能没有总结全,希望大家多多指教
。。。。。。。。。。。。。。。。。
版权原因,完整文章,请参考如下:关于hashtable与hashmap的区别