Java笔记_004_运算符
运算符
算术运算符
运算符和表达式
- 运算符:对常量或者变量进行操作的符号
- 表达式:用运算符把常量或者变量连接起来符合java语法的式子就可以称它为表达式,不同运算符连接的表达式体现的是不同类型的表达式
算数运算符
符号 | 作用 |
---|---|
+ | 加 |
- | 减 |
* | 乘 |
/ | 除 |
% | 取余 |
字符的"+"操作
字符会转换成计算机对应的底层数字进行运算
算数表达式中包含多个基本数据类型的值的时候,整个算数表达式的类型会自动进行提升
提升规则:
-
byte类型,short类型和char类型将被提升到int类型
-
整个表达式的类型自动提升到表达式中等级最高操作数同样的类型
等级顺序:byte,short,char->int->long->float->double
字符串的"+"操作
"+“操作中出现字符串的时候,这个”+"是字符连接符,而不是算数运算符
连续"+"操作,从左到右依次执行
System.out.println("Solitude" + 222); // out: Solitude222
System.out.println(222 + "Solitude"); // out: 222Solitude
System.out.println("Solitude" + 200 + 22); // out: Solitude20022
System.out.println(200 + 22 + "Solitude"); // outm: 222Solitude
赋值运算符
赋值运算符
符号 | 作用 |
---|---|
+ | 赋值 |
+= | 加后赋值 |
-= | 减后赋值 |
*= | 乘后赋值 |
/= | 除后赋值 |
%= | 取余后赋值 |
+=,-=,*=,/=,%=这些运算符隐含了强制类型转换
short s = 10;
s += 20; // s = (short)(s + 20);
自增自减运算符
自增自减运算符
符号 | 作用 | 说明 |
---|---|---|
++ | 自增 | 变量值加一 |
– | 自减 | 变量值减一 |
自增自减运算符参加操作时
int i = j++;
// => int i = j; j++;
int i = ++j;
// => j++; int i = j;
关系运算符
符号 | 说明 |
---|---|
== | 等于 |
!= | 不等于 |
> | 大于 |
>= | 大于等于 |
< | 小于 |
<= | 小于等于 |
关系运算符的结果的类型都是boolean(true, false)
int i = 10;
int j = 20;
System.out.println(i = j); // out: 20, 把j的值赋值给i,然后输出i的值
逻辑运算符
逻辑运算符是用来链接关系表达式的运算符,逻辑运算符也可用来链接布尔值
逻辑运算符
符号 | 作用 |
---|---|
& | 逻辑与 |
| | 逻辑或 |
^ | 逻辑异或 |
! | 逻辑非 |
短路逻辑运算符
短路逻辑运算符具有短路效果
符号 | 作用 |
---|---|
&& | 短路与 |
|| | 短路或 |
三元运算符
格式:关系表达式?表达式一:表达式二;
int a = 10;
int b = 20;
a > b ? a : b; // out: b
// a > b 成立结果就为a,不成立结果就为