关于HASHMAP的释放问题

都说集合类使用不当会引起内存泄漏,那使用完毕HashMap o = new HashMap(),是调用clear方法,还是o = null

如果你这个hashMap还要继续使用,自然是调用clear方法比较好,如果是不再使用则可以使置为null,显式的标明该对象需要被回收。

一般情况下两者都不用,因为JVM会自行进行内存回收。 所谓的内存泄漏是在某些特定的情况下用的不好会内存溢出。

比如:你的这个map是声明成整个系统的全局变量,而系统本身是7×24小时的运作,user每个操作都往map里面put内容,却从来不调用remove方法,这样总有一天内存会被耗尽。而jvm并不知道你这个全局map里面的内容是否依然有用,所以没办法帮你进行内存回收,这个时候我们会观察到JVM剩余的内存越来越少,称为内存泄漏.

让haspmap=null
这样就标明该对象需要被回收