PS:本文使用的Java源码是JDK1.8。
之前写过一篇类似的文章,但是因为给出的 demo 错误,所以删除原文章重写一份。
public static void main(String[] args) {
Map<String, String> map = new HashMap<>();
for (int j = 0; j < 100; j++) {
double i = Math.random() * 100000;
map.put("键" + i, "值" + i);
map.remove("键" + i);
}
System.out.println("map size is: " + map.size());
}
这段代码并不复杂,先新增一个 key,然后再把这个 key 移除。
运行结果如图。
结果不出所料,也没有什么新意,就是预料中的结果:size = 0;
现在我们上一组多线程代码。
public static void main(String[] args) {
Map<String, String> map = new HashMap<>();
for (int i = 0; i < 100