目录
[5.1 算术运算符](#5.1 算术运算符)
[5.1.1 数字运算](#5.1.1 数字运算)
[5.1.2 字符运算](#5.1.2 字符运算)
[5.1.3 字符串运算](#5.1.3 字符串运算)
[5.2 自增自减运算符](#5.2 自增自减运算符)
[5.3 赋值运算符](#5.3 赋值运算符)
[5.4 关系运算符](#5.4 关系运算符)
[5.5 逻辑运算符](#5.5 逻辑运算符)
[5.6 三元运算符](#5.6 三元运算符)
[5.7 运算符优先级](#5.7 运算符优先级)
一.字面量
字面量类型:
- 整数
- 小数
- 字符串(双引号引起来)
- 字符(单引号引起来,内容只能有一个)
- 布尔: true false
- 空 null
二.变量
变量的定义格式:
- 数据类型 变量名 = 数据值;
- int a = 10 ;
注意:
- 变量只能存一个值
- 变量名不能重复
- 使用前一定要赋值
- 一条语句可以定义或赋值多个变量
键盘录入:
获取键盘上输入的数据:使用 Scanner。 
三.数据类型
基本数据类型(四类八种):
整数类型,小数类型,字符类型,布尔类型。
注意:
- long类型数据必须以L结尾,可以大写也可以小写。
- float类型数据必须以f或F结尾。
- 取值范围大小关系:double > float > long > int > short > byte
|------------|---------|
| 整数 | 内存 |
| byte | 1字节(8位) |
| short | 2字节 |
| int | 4 |
| long | 8 |
| 浮点数(小数) | 内存 |
| float | 4 |
| double | 8 |
|---------|-----|
| char | 2字节 |
| boolean | 1字节 |
引用数据类型:
四.标识符
标识符 就是我们自己起的名字。比如类名,变量名,方法名等等。
标识符的命名规则:
- 必须由数字,字母,下划线_,美元符&组成。
- 不能以数字开头。
- 不能是关键字。
- 区分大小写。
- 建议起名 见名知意,驼峰命名。
五.运算符
5.1 算术运算符
+,- ,* ,/ ,% 加 减 乘 除 取余
注意:
- 整数相除还是整数,取商。
- 小数直接参与运算,结果可能不精确
5.1.1 数字运算
类型不一样的不能运算,需要转换成同类型的才能计算
类型转换:
1.隐式转换:不同类型的数据进行计算,默认采取隐式转换。
- 1.如有byte short类型的数据,先提升为int类型
- 2.把取值范围小的提升为取值范围大的再进行计算。
2.强制转换:强制转换需要自己写转换代码
在被强转的数据前面加上目标数据类型
java
int a = 10;
int b = 20;
byte c = (byte) a;
byte d = (byte)(a+b)
5.1.2 字符运算
字符和数字进行运算,字符需要查ASCII码表,将对应的字符转换成数字再和数字相加。
java
char a = 'A'; //对应ASCII码表65
int b = 1;
System.out.println(a + b);//输出66
通过强制转换可以也将结果转换成字符。比如字母大小写转化。
java
char a = 'A';
int b = 32;
System.out.println((char)(a + b));//输出a
5.1.3 字符串运算
字符串只有 + 操作,没有其他操作
任意数据 + 字符串都是拼接操作,并产生一个新的字符串。
5.2 自增自减运算符
|--------|---------|
| 符号 | 说明 |
| ++ | 变量值 + 1 |
| -- | 变量值 - 1 |
5.3 赋值运算符
|--------|--------|
| 符号 | 说明 |
| = | 直接赋值 |
| += | 加后赋值 |
| -= | 减后赋值 |
| *= | 乘后赋值 |
| /= | 除后赋值 |
| %= | 取余赋值 |
5.4 关系运算符
|--------|--------|
| 符号 | 说明 |
| == | 等于 |
| != | 不等于 |
| > | 大于 |
| >= | 大于等于 |
| < | 小于 |
| <= | 小于等于 |
5.5 逻辑运算符
|--------|--------|
| 符号 | 说明 |
| & | 与(且) |
| | | 或 |
| ! | 非(取反) |
短路逻辑运算符:
|--------|--------|-----------------|----------------|
| 符号 | 作用 | 案例 | 说明 |
| && | 短路与 | a>1 && a<10 | 左边为false,右边不执行 |
| || | 短路或 | a>1 || a<10 | 左边为true,右边不执行 |
逻辑运算符运算和单个的& 、|是一样的,只是提高了效率。
5.6 三元运算符
格式:关系表达式 ? 表达式1 : 表达式2 ;
关系表达式为 true ,取表达式1 ;关系表达式为 false,取表达式2.。
5.7 运算符优先级
小括号优先级最大。
