基本数据类型续
Float 如果定义的数据小于比他小的数据类型则可以直接定义,例如float a = 2343时,但是如果超过比他小的数据类型范围则需要在数据后面添加F。
Double 如果定义的数据小于比他小的数据类型则可以直接定义,例如float a = 2343时,但是如果超过比他小的数据类型范围则需要在数据后面添加D(可以不添加)。
Long 如果定义的数据小于比他小的数据类型则可以直接定义,例如float a = 2343时,但是如果超过比他小的数据类型范围则需要在数据后面添加D(可以不添加)。
数据类型自动提升
整形默认类型为int 浮点型默认为double,在使用数据运算时会自动提升数据类型,例如char和char进行运算时会自动提升为int。
Double和int进行运算时会自动提升为double(三元运算符也是运算)
强制类型转换当赋值包含在指定的数据类型里面时,需要使用强制类型转换,但是可能会丧失数据精度。
例:int x = (int)1.0+3.0; x=4;
Int x = 15/2; x = 7
数据类型大小排序
Byte(1字节)>short(2字节)>int(4字节)>long(8字节)>float(4字节)>double(8字节)>
Char(根据字符集决定字节数)>
运算符
+ - * \
加 当+链接字符串的时候则是字符链接符号。
减 乘 除
++ --
自增:++x为自增1,x++后自增
X = 2; x *= x++;
①先将x的值赋给x++;②将x自增1;③将x++的值赋给x;
所以这里x为4;
自减:--x为自减1,x--后自减
三元运算符
例: int x = 3; int y = 4;
x>y?”x大”:”y大”;
逻辑运算符
& | !
与或
非 表示取反,当时true时为false ,false时则为true
&& ||
短路与 短路非
短路与:需要左右两边均为true 结果才为true ,当前面条件为false时,后面条件跳过不计算称为短路。
短路非:需要左右两边任意为true 结果才为true ,当前面条件为true时,后面条件跳过不计算称为短路。
比较符号
> < == !=
进制
二进制 为逢2进1;例如9的二进制为 1001
八进制 为逢8进1;例如9的八进制为 11
十进制 为逢10进1;
十六进制 为逢16进1;大于9的数字由 a b c d e f代替 例如29的进制为1D 1为16+D为13
字符集
中文字符集为 UTF-8和 ASCII
UTF-8是三个字节 ASCII是两个字节
位运算符
>> 右移 右移N位 当前值除以2的N次方
<< 左移 右移N位 当前值乘以2的N次方
>>>无符号右移 不考虑首位符号,用0补齐,计算方式 也是除以2的N次方