arraylist中最多能放多少元素

目前ArrayList的size方法返回的是一个int,所以它最多能放Integer.MAX_VALUE((2^31)-1)个元素。

你可以估计元素的大小来估计你的程序会占用多少内存啊。写一个简单的程序,在里头把一万个(或更多;越多越准)DB数据元素放进一个ArrayList然后用一句System.in.read()防止程序的终止,此时打开Task Manager就知道整个程序占用多少内存从而能估计一个元素的大小。

话说回来,如果一个程序里什么都没有,就只有一个装满的ArrayList<Integer>,那程序会占用多少内存空间呢?
2147483647 × 32 bits = 68719476704 bits

大约8GB!

谁家有那么多内存?
posted @ 2011-09-07 10:22  Jet J.J.Cheng  阅读(1227)  评论(0编辑  收藏  举报