1、基本数据类型
Java中的基本数据类型有4类8种。
四类 | 八种 | 字节数 | 表示数值范围 | 默认值 |
整型 | byte | 1 | -128~127 | 0 |
short | 2 | -32768~32767 | 0 | |
int | 4 | 0 | ||
long | 8 | 0 | ||
浮点型 | float | 4 | 0.0 | |
double | 8 | 0.0 | ||
字符型 | char | 2 | 一个字符,单引号中一个字符 | |
布尔型 | boolean | 1 | 只有true/false两个取值 | false |
Java中默认的整型为int类型,默认的浮点型为double类型。
Java中的boolean类型与整形值不能进行转换。(区别于C语言0为false,非0为true)
Java中没有任何无符号(unsigned)形式的int、long、short或byte类型。
byte和short类型主要用于特定的应用场合,例如,底层的文件处理或需要控制控制占用存储空间量的大数组。
很少情况适合使用float类型,例如,需要单精度数据的库,或者需要存储大量数据。
如果数值计算中不允许有任何舍入误差,就应该使用BigDecimal类。
2、变量定义
变量定义格式为:数据类型 变量名 = 变量值;
3、数据类型的转换
- 自动转换(表示数值范围小的数据类型转换为表示范围大的数据类型)
范围大的数据类型 变量名 = 范围小的数据类型;
byte -> short -> int -> long -> float -> double
注意点:
如果两个操作数中有一个是double类型,另一个操作数就会转换为double类型。
否则,如果其中一个操作数是float类型,另一个操作数将会被转换为float类型。
否则,如果其中一个操作数是long类型,另一个操作数将会被转换成long类型。
否则,两个操作数都将被转换为int类型。
byte b; b = 3 + 4; // Java中存在常量优化机制,能自动识别为byte类型
short s = 1 ;
s += 1; // 使用扩展运算符时,会自动实现强制数据类型转
- 强制转换
范围小的数据类型 变量名 = (范围小的数据类型)范围大的数据类型值;
4、运算符
+作连接符的情况,用于连接两个字符串。
++/--作为后置运算符时,变量先参与运算,后自增/自减。
++/--作为前置运算符时,变量先自增/自减,后参与运算。
短路与/短路或:expression1 && expression2 前一部分判定出结果为假则后一部分不再进行运算;expression1 || expression2 前一部分判定出结果为真则后一部分不再进行运算。
5、三元运算符
(条件表达式)?表达式1:表达式2;
条件表达式为真,取表达式1,否则取表达式2的值。