我需要存储我的类的大量实例,并且因为我有一台非常糟糕的计算机,只有2GB的RAM,所以我需要它以尽可能少的内存使用率运行。所以任何人都可以告诉我拥有大量的字段或数组更有效率。我不关心“最好的方法”,我需要使用最少RAM的方式。所以,是一个阵列还是很多领域?
答案 0 :(得分:3)
你的问题有点不清楚,但基本上是班级
public class SomeClass {
int var1;
int var2;
...
int var100;
}
将占用与int[100]
数组一样多的空间。可能会有一些细微差别,具体取决于平台,但总共不超过16个字节,它可以采用任何一种方式。 (你可以用任何其他数据类型代替int
,同样的事情也是如此。)
但是,为了清楚起见,上述任何一项占用多的空间少于100个对象,每个对象包含一个int
。
答案 1 :(得分:2)
数组不会以任何方式压缩对象,它只是命令它们。所以字段或数组会有相同的内存开销。
那就是说,拥有一个对象数组(或List
)会更好地保存你的对象并一起收集。