gpt4 book ai didi

java - 哈希表的内存引用

转载 作者:行者123 更新时间:2023-12-04 05:26:24 26 4
gpt4 key购买 nike

我有一个关于哈希表的小问题。假设我有一个字符串作为键和一个复杂对象作为存储在哈希表中的值。

现在我使用“get”从同一个哈希表中获取对象。现在,如果我存储从哈希表中获得的对象的引用的变量设置为空,这将不会影响哈希表中对象的内存。如何销毁哈希表中的对象?

一种方法可能是将 null 作为给定键的值?还有其他更优雅的方式吗?

最佳答案

首先,使用Map而不是 Hashtable .其次,您可以使用 Map#remove 从内存中释放键的引用的方法。请注意,您将从 Map 中删除键/值对。但该对象将一直存在,直到 GC 决定收集它。

关于Map的说明对比 Hashtable :

  • Differences between HashMap and Hashtable?

  • 请注意, HashMapHashtableMap 的实现界面。

    关于java - 哈希表的内存引用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13171754/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com