gpt4 book ai didi

java - HashMap 和垃圾回收 : do I need to call clear() before variable re-assignment?

转载 作者:太空狗 更新时间:2023-10-29 15:33:39 25 4
gpt4 key购买 nike

也许这是一个愚蠢的问题,但我不确定垃圾收集过程。

考虑这段代码:

private HashMap<String, Parameter> configuration = new HashMap<String, Parameter>();

...
//add some items to configuration
...

//now get another configuration
HashMap<String, Parameter> parameters = new HashMap<String, Parameter>();
for (String parameterName : configurationParameterNameList) {
parameters.put(parameterName, reader.readParameter(parameterName));
}

//and reassign the variable
this.configuration.clear();
this.configuration = parameters;

我需要在重新分配之前调用 configuration.clear() 吗? Parameter 类内部只包含几个 String 变量。

最佳答案

不,您不需要调用 clear()

只要您更改this.configuration,只要没有任何其他对象引用该HashMap,它(及其所有条目)将符合垃圾回收条件到另一个值。

关于java - HashMap 和垃圾回收 : do I need to call clear() before variable re-assignment?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17027946/

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