基本类型
- boolean 布尔
- byte 字节
- short/int/long 短整型/整型/长整型
- float/double 浮点数
- char 字符
boolean 只有true或者false两种,默认是false
/** * 布尔型 * @return */ public boolean booleanTest() { boolean isFals = 3==0;//is false boolean isTrue = true;//is true not True return isFals; }
byte
- byte字节,1byte=8bits(8位),即00000000~11111111
- 存储有符号的,以二进制补码表示的整数
- 最小值-128,最大值127,默认值0
- byte类型用在大型数组中可以显著节约空间,主要代替小数,因为byte变量占用的空间只有int类型的四分之一
- byte在二进制文件中读写使用较多
/** * 字节类型 */ public void byteTest() { byte a = 127;//正常 且打印出来为127 byte b = -128;//正常 且打印出来为-128 byte c = -129;//打印出来为127 byte d = 128;//打印出来为-128 }
整数类型
- short,16位,2个字节,有符号的以二进制补码表述的整数(-32768-32767,-2~2-1),默认值0
- int,32位,4个字节,有符号的以二进制补码表示的的整数,(-2~2-1),默认值为0
- long,64位,8个字节,有符号的以二进制补码表示的整数,(-2~2-1),默认值为0L
/** * 整数类型 */ public void IntTest() { short a1 = 32767;//正常 short a2 = 32768;//error。越界 int b1 = 2147483647;//正常 int b2 = 2147483648;//error,越界 long c1 = 1000000000000l;//正常,需要尾部加l long c2 = 2147483647;//隐式做了int转换 long c3 = 2147483648l;//去掉L将报错 }
浮点数类型
- float,单精度,32位,4个字节,符合IEEE 754标准的浮点数,默认值0.0f,float的范围为1.410~3.410(无论正负)
- double,双精度,64位,8个字节,符合IEEE 754标准的浮点数,默认值0.0d,double的范围为1.410~3.410(无论正负)
- float和double都不能用来表示很精确的数字
/** * 浮点数类型 */ public void floatTest() { float f1 = 1.23f;//float赋值必须带上f double d1 = 4.56d; double d2 = 4.56;//double可以省略d System.out.println(f1);//1.23 System.out.println((double) f1);//转换到double,输出1.23000000190734863 System.out.println(d1);//4.56 System.out.println((float)d2);//4.56 System.out.println(f1==1.229999999f);//true System.out.println(d2==4.5599999999999999999d);//true }
字符类型
- char是一个单一的16位Unicode字符
- 最小值是\u0000(即为0)
- 最大值是\uffff(即为65535)
- char数据类型可以存储任何字符
运算符
- +,-,*,/,%
- 逻辑运算符&&,||,!
- 比较运算符 !=,>,>=,<,<=,==
- 移位运算符>>,<<等
- 不要背诵运算符优先级,有括号隔开即可