【发布时间】:2016-01-06 06:11:15
【问题描述】:
考虑这种情况。我的程序中有一千个int 变量。我们知道一个int变量在Java中占用了2个字节的内存空间。因此,我的变量占用的空间总量为 2000 字节。但是,问题在于,每个变量中的值只占用了它所拥有的空间的一半。因此,实际需要的空间是 1000 字节,这意味着 1000 字节被浪费了。我该如何解决这个问题?有没有办法在 Java 中解决这个问题?
【问题讨论】:
-
We know that an int variable occupies 2 bytes of memory space in Java.我知道不会:) -
另外,您在这里要解决的原始问题是什么? (不是您认为的解决方案,而是潜在的计算问题。)
-
你能解释清楚一点吗@biziclop? :-)
-
时间与空间。有一些集合可以让您调整后者。这取决于你想做什么。提防过早的优化。
-
@KonakanchiSaketh 好的,那不一样了。一般来说,您应该合理地调整数据字段的大小:不要使用
longs 来存储月份中的某天,但同时也不要使用byte来存储温度,因为很可能会发生某些事情太热或太冷。除此之外,还有可变大小的数据结构,但它们是有代价的:它们通常有一个固定的标题,它本身占用空间(这使得它们对于少量数据不切实际)。
标签: java performance memory