整数类型:
一个字节对应8位(最高位符号位(0/1)0正1负)
byte d=128-1;//字节 8 位,1个字节
shout c=32767;//短整型,16位 2个字节最大长度2^15-1;
int=2;//整数类型,32位 4个字节
int=11111111111;//手机号不能存储,超出int类型范围
int =111_11111111;//可以(不建议)
long b=1L;//长整型64位 8个字节(L大小写都可以,最好大写,小写与数字1容易区分不开)
浮点类型:
float e = 3.1415926f;//浮点类型32位 4个字节
double f = 3.14;//双精度类型64位 8个字节
字符类型:
char类型的值要用单引号括起来,如:’A‘.
注意:“A”和’A‘是不一样的。“A”是长度为1的字符串,这一点考试当中,经常出现的。
char g = 'a';//只能写一个字符,(符号,字母,数字),单引号
布尔类型:
boolean类型只有两个值:false和true,用来判断逻辑条件。
**注意:整型和布尔类型不能转换。**在C或C++种中,非0的数字都可以表示true,数字0可以表示false。
所以在Java当中,逻辑条件只能是false或者true。如果你输入一个数字,是不能通过编译的。
boolean h = false;//布尔类型只有俩个值(true,flase)正确或错误
byte类型范围
byte类型占8位字节。其范围【-128,127】解释如下:
正数在计算机内原码,反码,补码一致,最高位为符号位:
1的原码为0 000 0001
127的原码为0 111 1111
2^0 + 2^1+…+ 2^6 = 2^7-1
所以最大的正整数是127
负数在计算机中表示为补码,最高位为符号位:
-1:
原码为1000 0001,
反码为1111 1110,
补码为1111 1111
-127:
原码为1111 1111,
反码为1000 0000,
补码为1000 0001
所以最小的负数是-127吗?错,不是。
在二进制中,0有两种表示方法。
+0的原码为0000 0000,
-0的原码为1000 0000,
因为0只需要一个,所以把-0拿来当做一个最小的数-128
-128的补码表示为1000 0000,在8位没有原码。
注意,这个补码并不是真正的补码,真正的补码是1 1000 0000,溢出。
范围【-128,127】