我想做出决定如何设计我的应用程序。Android:真的需要2个字节吗?
我一样有这个类的约300实例:
public class ParamValue {
protected String sValue = null;
protected short shValue = 0;
protected short mode = PARAM_VALUE_MODE_UNKNOWN;
/*
* ...
*/
}
我的这些实例的数组。我无法找到这些短裤真的需要2个字节,否则他们拿4个字节?
而且我需要通过AIDL传递这些对象的列表作为List<Parcelable>
。包裹不能readShort()
和writeShort()
,它只能与int
一起使用。所以,为了在这里使用short,我必须手动将两个短裤放入一个int中,然后将其打包。看起来太突兀。
请问你能告诉我短裤需要多少个字节,在这里使用short而不是int是否合理?
UPDATE:
我更新了我的问题,为未来的读者。
所以,我写了一个测试应用程序,我发现在我的情况下绝对没有理由使用short
,因为它需要与int
相同的空间。但是,如果我定义那样的短裤的数组:
然后它需要较少的空间比整数的数组:
protected int[] myValues[2];
所以,似乎没有理由使用短,如果我想实现更少的内存使用量? – 2012-01-13 19:10:28
我会编写一个测试程序来创建大量对象,并使用'Runtime.freeMemory()'前后测量空闲内存,并在实际的生产JVM上运行它。这样做既可以定义对象,也可以查看是否可以检测到不同。有可能没有什么区别,但是这会让你看清楚。 – 2012-01-13 19:13:34
我不认为这取决于实现,至少在数组的情况下,如果它将支持JNI。 – 2012-01-13 19:45:06