哪种数据结构使用更多内存?

0 java memory-management data-structures

哪种类型的数据结构使用更多内存?

  • 哈希表
  • 哈希映射
  • 数组列表

你能不能给我一个简短的解释,哪一个不容易出现内存泄漏?

Osc*_*Ryz 15

...哪一个用于避免内存泄漏

答案是他们所有人,而不是他们.

内存泄漏与数据结构无关,而是与您使用它们的方式有关.

当您的目标是避免"内存泄漏"时,每个内存使用的内存量无关紧要.

您可以做的最好的事情是:当您检测到某个对象不再在应用程序中使用时,您必须将其从集合中删除(不仅是您列出的那些,还有您可能使用的任何其他对象; List,Map ,设置甚至数组).

这样垃圾收集器就能释放该对象使用的内存.

您可以查看本文"垃圾收集器如何工作",以进一步解释Java如何从其使用的对象中释放内存.

编辑:

Java中还有其他数据结构可用于WeakHashMap等参考管理,但这可能被视为"高级主题".