Java的原始类型(Primitive Type)

我们知道,在Java中,变量有两种类型,一种是原始类型,一种是引用类型。

原始类型一共有8种,它们分别是char,boolean,byte,short,int,long,float,double。在Java API中,有它们对应的包装类,分别是(首字母大写)Character,Boolean,Byte,Short,Integer,Long,Float,Double(char,int的变化稍微大点)。

JAVA JVM对于不同的原始类型会分配不同的存储空间,具体分配如下:

byte  : 1个字节    8位最大值: 127   (有符号)

short : 2个字节    16位                            32767

int :     4个字节    32位                            2147483647

long:   8个字节    64位                            9223372036854775807

float:   4个字节    32位                            3.4028235E38

double:8个字节   64位                            1.7976931348623157E308


类型转换问题:

类型转换分为强制类型转换和隐式类型转换。

比如int a = Byte.MAX_VALUE + 1;   //隐式转换

byte a = (byte) (Byte.MAX_VALUE + 1);//强制转换


溢出问题:

int value = Integer.MAX_VALUE + 1;

System.out.println(value);//输出-2147483648

因为有符号int类型最大能表示到2147483647,所以如果再加1则会溢出,然后会变成最小值

(-2147483648~2147483647)

你可能感兴趣的:(JAVA)