在 Java 中获取数据类型大小(sizeof) 的最佳实践
我想将双精度和整数的列表存储到ByteBuffer中,该字节缓冲区要求分配大小。我想写一些类似C的语法
int size=numDouble*sizeof(double)+numInt*sizeof(int);
但是在Java中没有。以字节为单位计算大小的最佳做法是什么?我应该硬编码吗?sizeof
我想将双精度和整数的列表存储到ByteBuffer中,该字节缓冲区要求分配大小。我想写一些类似C的语法
int size=numDouble*sizeof(double)+numInt*sizeof(int);
但是在Java中没有。以字节为单位计算大小的最佳做法是什么?我应该硬编码吗?sizeof
从Java 8开始,所有基元类型的包装类(除了)都有一个字段。因此,在您的情况下:Boolean
BYTES
int size = numDouble * Double.BYTES + numInt * Integer.BYTES;
文档:http://docs.oracle.com/javase/8/docs/api/java/lang/Integer.html