我有一个有
的课程public class Sequence{
ArrayList<String> obj
.
.
.
}
现在在我的Main课程中,我可以执行以下任一操作:
public class Main{
// option 1
ArrayList< Sequence > xyz ...
// option 2
ArrayList< ArrayList< String > > abc......
}
上述两个选项中哪一个会占用更少的空间?
提出问题的另一种方法是,直接使用字符串的ArrayList比使用ArrayList< Seq >
Seq
包含字符串ArrayList的{{1}}花费更多的内存。
编辑==================================
提出这个问题的原因是因为我正在使用很多这些Seq对象。我得到一个内存不足的例外。我正在考虑一些减少内存使用的方法,我想删除所有对象并使用原始数据类型。
即使ArrayList&lt;之间的内存使用量差异也是如此。 Seq>和ArrayList&lt;的ArrayList&LT;字符串&gt; &GT;很少。如果我正在使用其中的500个,我想这会有所作为。我的理解是否正确?
答案 0 :(得分:0)
它们在内存使用方面足够接近,您不必担心它。这不会是性能或内存使用的主要来源。如果你有足够的字符串,它们将成为内存使用。
答案 1 :(得分:0)
该类将“占用更多内存”,因为它的类和实例都需要在内存中但是......并不重要。别担心。