【Java基础】基本数据类型和运算符
基本数据类型:
数值型:
整型:
① byte,1byte = 8bit(8位),储存是有符号的,以二进制补码表示的整数。
最小值为-128,最大值为127,默认值为0。
byte在大型数组中可以显著的节约空间,主要替代小整数,因为byte变量所占空间只有int类型的四分之一,因此在二进制文件中使用较多。
②short,16位,2个字节,有符号的,以二进制补码表示的整数。
范围:(-32768~32767,-2^15~(2^15-1))默认值为0
③int,32位,4个字节,有符号的,以二进制补码表示的整数。
范围:(-2147483648~2147483647,-2^32~(2^32-1))默认值为0
②long,64位,8个字节,有符号的,以二进制补码表示的整数。
范围:-2147483648~2147483647(-2^31~(2^31-1)),默认值为0L
浮点型:
①float,单精度,32位,4字节,
范围:3.4×10^(-38)~3.4×10^(38),默认值0.0f,
②double,双精度,64位,8字节;
范围:-1.7E-308~1.7E+308,默认值:0.0d;
字符型:
char,单一的16位Unicode字符。最小值:\u0000,即0;最大值:\uffff,即65535;默认值:\u0000
char字符可以储存任何字符
布尔型:
boolean,取值范围只有true 和false,默认值:fasle
//整数用int,小数用double
//long用于描述日期时间,内存或文件大小(字节)
//byte 用于编码转换或二进制数据传输(-128~127)
//char 一般用于描述中文
//boolean 逻辑判断
//范围小的数据类型可以自动转换为范围大的数据类型 result = (long类型) + 1(int类型)自动转换为long类型
//范围大的数据类型必须强制转换才能变为范围小的数据类型 byte result = (byte) 128 强制转换为byte类型
引用数据类型:数组,类,接口
运算符
①+ - * / %
②逻辑运算符:&&,||,!
③比较运算符:!=,>,>=,<,<=,==
④位移运算符:<<,>>,>>>(左移,右移)
//在数字没有溢出的前提下,对于正数和负数,左移一位都相当于乘以2的1次方,左移n位就相当于乘以2的n次方
//右移一位相当于除2,右移n位相当于除以2的n次方。
>> :右移 最高位是0,左边补齐0;最高为是1,左边补齐1
<< :左移 左边最高位丢弃,右边补齐0
>>>:无符号右移 无论最高位是0还是1,左边补齐0