一.数据类型/常量
No. | 数据类型 | 占位(字节) | 数据范围 |
---|---|---|---|
1 | byte | 1 | [ -128 , 127 ] |
2 | short | 2 | [ -32768 , 32767 ] |
3 | int | 4 | [ -2^31^ , -2^31^ - 1 ] ≈ [-21亿,21亿] |
4 | long | 8 | [ -2^63^ , -2^63^-1 ] |
6 | float | 4 | [-3.4x10^38^ , ~ 3.4x10^38^] |
7 | double | 8 | [-1.7x10^308^ , ~ 1.7x10^308^] |
5 | char | 2 | [0 , 2^16^-1] |
8 | boolean | 1位 | true,false |
二.变量
语法:数据类型 变量名 = 初始值;
变量的特点:
占据着内存中的某一块存储区域
该区域有自己的名称(变量名)和类型(数据类型)
可以被重复使用
该区域的数据可以在同一类型范围内不断变化
三.基本数据类型
自动类型转换:范围小的数据类型直接转换成范围大的数据类型 (小 => 大)。
强制类型转换:范围大的数据类型强制转换成范围小的数据类型 (大 => 小)。
类型提升
所有的byte、short、char类型被自动提升到int类型,再参与运算
整个表达式的最终结果类型,被提升到表达式中范围最大的那个类型
四.算术运算符
自增自减
自增:++,递增操作符,使变量值增加1,有前置和后置之分,只能操作变量。
自减:-- ,递减操作符,使变量值减去1,有前置和后置之分,只能操作变量。
前置后置的区别是:
前置(++result): 表示对result加1之后的结果进行运算
后置(result++): 表示对result变量加1之前的值(原始值)进行运算。
三元运算符
语法:数据类型 变量 = boolean表达式 ? 结果A :结果B;
如果boolean表达式结果:
为true,则三元运算符的结果是结果A;
为false,则三元运算符的结果是结果B;
逻辑运算符
&和&&的区别
& :&左边表达式无论真假,&右边表达式都进行运算;位与
&& :如果&&左边表达式为真,&&右边表达式参与运算;如果&&左边表达式为假,&&右边表达式不参与运算,故称短路与。
| 和 || 的区别同理,对于||,左边为真,右边不参与运算。