1. 图片占内存容量计算公式为:
图片所占内存大小 = 图片长度(像素) * 图片宽度(像素) * 一个像素所占内存空间(单位:字节)
一般地,一个象素所占内存空间根据机器颜色数(专业词汇叫色深Color Depth)来决定:(1)Nokia 老S40机器 颜色数为4096色,就是2^12, 一个象素所占内存空间为1.5个字节;(2)Nokia S40新版 机器和 S60机器 颜色数为65536色,就是2^16, 一个象素所占内存空间为2个字节;有些机器颜色数为26w色,就是2^32,一个象素所占内存空间为4个字节。
ps:专业名词“8位”是指所能表现的颜色深度:一个8位图像仅最多只能支持256(2^8)种不同颜色,1个字节。
2. 通过ps等图片软件压缩图片只能减小jar大小,并不能减少它在内存中的占有量。
图片在内存中的占有量=宽*高*X(字节),例如一张2个字节128*128的图片的内存占有量=128*128*2=32768(字节)=32K。
像Symbian和WinCE这种智能操作系统,本身会做动态内存分配,当内存不足时会从内存池中将剩余内存分配给该应用程序,当分配的内存长期剩余时会回收内存,你已经内存溢出,说明内存池中已无更多于内存可供使用,是不会调节出更多的内存的。
3. 三张图,理解文件大小的含义。文件的大小 = 字节数(单位b/kb/M/G),程序中将文件转为byte数组,数组的长度自然就等于字节数,也就是文件的大小了。这么基础的东西,竟然绕进去了,tnnd。
(1)J2SE
(2)J2ME
(3)Android
(4)文件属性