gpt4 book ai didi

java - 返回 HashMap 的 Collection View 的更简洁的方法?

转载 作者:行者123 更新时间:2023-11-30 02:11:52 27 4
gpt4 key购买 nike

我试图理解以更干净的方式做事的方式。如果我做错了什么请纠正我,我有一个函数,

 Collection<Object> x(Collection<Object> input){
Map<Double,Object> map = new HashMap<Double,Object>();
//do some processing

return map.values();
}

现在这是否使 Entry 对象存在于内存中,因为 value() 包装了entrySet(),在这种情况下,最好将所有 value() Collection 收集到另一个 Collection 中并返回,另一件事是,我们是否泄漏如果我们返回 HashMap 的 Collection View ,会占用内存(不需要的对象)吗?

最佳答案

does this make Entry objects to live in the memory

是的,因为返回的集合只是委托(delegate)给 HashMap

is it better to collect all values() Collection into another Collection

一般来说,没有。在极少数情况下,它可能很有用,在这种情况下,您需要更紧凑的或可序列化的集合,或更具体的集合类型(集合或列表)

are we leaking memory

没有。该集合以及它所委托(delegate)的 HashMap 最终将像任何其他 Java 对象一样被垃圾回收。

关于java - 返回 HashMap 的 Collection View 的更简洁的方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49825794/

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