您好我正在学习Java基础知识。我需要检查原始数据类型的大小,比如在c语言中使用sizeof();
。
示例代码:
int i;
System.out.print(sizeof(i));
答案 0 :(得分:9)
在Java中不需要这样的东西,因为为所有JVM设置了基元的大小(与C不同,它们可以变化)。
char
是16位(实际上是无符号数),int
是32位,long
是64位。
boolean
是这一切中丑陋的妹妹。在内部,它被操作为32位int
,但boolean
的数组每个元素使用1个字节。
答案 1 :(得分:7)
在相应的盒装类中使用BYTES
常量(自Java 8开始):
sizeof(int) -> Integer.BYTES
sizeof(long) -> Long.BYTES
sizeof(char) -> Character.BYTES
sizeof(short) -> Short.BYTES
sizeof(float) -> Float.BYTES
sizeof(double) -> Double.BYTES
sizeof(byte) -> Byte.BYTES
请注意,未定义引用和布尔大小,它是特定于实现的。一般来说,你很少关心它们的大小。