我使用 HashMap 结构来存储父文档(Key)和与该父文档相关的所有子文档(Value)的列表之间的映射。这需要稍后迭代来处理映射。列表中的键以及每个值通常是 75-100 个字符长的文件名。这工作正常,但有 50000 个父文档,每个父文档都有 50-100 个与其关联的子文档。因此这会在内存中产生巨大的对象负载。有没有更好的方法以内存有效的方式存储此映射?
Map<String, List<String>> docmap=new HashMap<String,List<String>>();
最佳答案
这应该更加节省内存,因为它不会浪费内存用于存储桶管理:
String [][] array = new String [50000][]; // parents
array[1] = new String[100]; // children for parent 1
关于java - 字符串到列表<String>的内存高效映射,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33595542/