嗨,我正在学习Java基础知识.我需要检查原始数据类型的大小,比如sizeof();在c语言中使用.
示例代码:
int i;
System.out.print(sizeof(i));
Run Code Online (Sandbox Code Playgroud)
在Java中不需要这样的东西,因为为所有JVM设置了基元的大小(与C不同,它们可以变化).
char是16位(实际上是无符号数),int是32位,long是64位.
boolean这一切都是丑陋的妹妹.在内部它被操作为32位int,但是booleans的数组每个元素使用1个字节.
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
Run Code Online (Sandbox Code Playgroud)
请注意,未定义引用和布尔大小,它是特定于实现的.一般来说,你很少关心它们的大小.