只有一种情况下,使用short将给您一个优势:大型的短数组。当然,只有当要存储的数字符合界限时,才能使用它们。
在所有其他情况下,无论您有short还是int,都没有什么真正的区别。例如:
代码语言:javascript复制class A {
short s;
double d;
}不会使用比以下内存更少的内存:
代码语言:javascript复制class B {
int s;
double d;
}因为对齐问题。因此,虽然第一个只有10个字节的netto数据,而第二个只有12个字节,但是当您分配一个对象时,它仍然会对齐到大约8字节的边界。即使它只是一个4字节的边界,内存的使用也是一样的。