java中map的clear和new性能对比

我再上一篇hashMap使用的优化文章的时候想过map的性能问题,没有仔细探究,今天有想到一个问题。java

咱们在使用HashMap的时候是用clear好呢,仍是直接new一个比较好!性能

而后就写了点代码进行实验比较大数据

Map<String, Object> map = new HashMap<String, Object>();
		for (int i = 0; i < 100000; i++) {
			map.put(i+"", 1);
		}
		
		long start = System.currentTimeMillis();
		map.clear();
		map.put("headerId", 1);
		for (int i = 0; i < 100000; i++) {
			map.put(i+"", 1);
		}
		long end = System.currentTimeMillis();
		System.out.println("运行时间:" + (end - start) + "毫秒");
		
		long start2 = System.currentTimeMillis();
		map = new HashMap<String, Object>();
		map.put("headerId", 1);
		for (int i = 0; i < 100000; i++) {
			map.put(i+"", 1);
		}
		long end2 = System.currentTimeMillis();
		System.out.println("运行时间:" + (end2 - start2) + "毫秒");

输出结果:优化

    运行时间:37毫秒spa

    运行时间:45毫秒.net

虽然时间差比较小,但事实证实若是后期大数据量的话仍是clear效率比较高,若是是小数据量仍是new效率高,1w条左右!code

相关文章
相关标签/搜索