long i[] = new long[1000000];
for(int j = 0; j < 1000000; j++) {
i[j]= 0l;
}
如上代码,按long类型占8位计算,应该占8000000/(1024*1024) = 7.62939453125MB内存,没问题.
Long i[] = new Long[1000000];
for(int j = 0; j < 1000000; j++) {
i[j]= 0l;
}
如上代码,按Long类型至少占12位计算,应该占11.444091796875MB内存。
监测一下内存大小,JVM会对包装类型进行自动拆装箱,结果Long被优化为int类型.只占3.814697265625MB。
看来在Java对象中使用包装类型是不错的选择.