整数类型及整数类型的显示转换

 整数类型:byte short int 和 long

 byte:变量表示范围为-128~127

         在内存中占据1个字节(8位)

short:变量表示范围为-32 768~32 767

          在内存中占据2个字节(16位)

int和long:变量在内存中分别占据4个字节(32位)和8个字节(64位)

 

在JAVA中系统中出现的整型值都被称为整型直接量,也就是说默认的类型就是int。

如果你输入的整型的数值大于了int型表示的数据范围,这时候你需要在最后加上一个大写的字母L或者小写字母l,表示此整型的值为long型数据;如果你输入的是以十六进制表示的数值,那么就需要在数值前加上0X或者是小写的0x;如果你想以八进制表示呢?那你就直接在值前面加上0就OK了.

  • 小提示
  • 使用byte或者是short进行算术运算的时候要注意,任何多个byte或者是short变量运算的结果都是32位的

下面我们来看一下数据类型的转换小例子

short xValue=9,yValue=9,zValue;

zValue=xValue*yValue;

继上面的知识点可以看出这个程序通不过

因为xValue*yValue所得到的结果它是一个32位的整型的值,而zValue仅只能存储一个2个字节的整数,编译器不会给我们自动的将一个32位的整型值转化为2个字节的整型值。所以我们就需要进行显式的类型转换,即zValue=(short)xValue*yValue;计算出来的结果中高的1字节将被舍去,因此我不推荐大家使用显式的类型转换,结果超出了1个字节所表示的范围,显式类型转换后得到的结果将是不正确的

如果你的操作数中有long型数据,那么计算的结果将是long型数据,其他的操作数在此long型数据运算前都将被转换成64位格式的数据了..

你可能感兴趣的:(java,存储,byte,编译器)