ArrayList <Integer>的内存使用情况

use*_*090 5 java integer memory-management arraylist

ArrayList<Integer>在我的研究项目中使用.我需要在此列表中保留未知数量的整数.有时我需要更新列表:删除现有记录或添加新记录.作为Integer一个对象,它只占用了更多的内存int.是否有任何替代方法来维护将消耗更少内存的列表Integer

jsp*_*cal 5

尝试针对内存使用进行了优化的整数列表实现,例如Colt库中的实现:

http://acs.lbl.gov/software/colt/api/cern/colt/list/IntArrayList.html

Java Integer对象通常需要比int原语更多的开销,因此您需要一个空间优化的实现.

来自柯尔特:

例如,在欧洲核子研究中心进行的科学和技术计算的特点是要求问题规模大,并且需要在相当小的内存占用下实现高性能.[...]


use*_*ser 0

您可以使用带有 int-s 的数组,并使用与 ArrayList 相同的逻辑编写自己的方法。但在我看来,这是一个坏主意 - 现代机器有足够的内存来使用 Integer 对象,相信我......:)