运算符
运算符:对常量或者变量进行操作的符号。
表达式:用运算符把常量或者变量链接起来符合java语法的式子就可以称为表达式。
不同运算符连接的边大师体现的是不同类型的表达式
举例说明:
int a=10;
int b=20;
int c=a+b;
+:是运算符,并且是算术运算符
a+b:是表达式,由于+是算术运算符,所以这个表达式叫做算术表达式
符号 | 作用 | 说明 |
---|---|---|
+ | 加 | 同正常的 |
- | 减 | 同正常的 |
* | 乘 | 同正常的 |
/ | 除 | 同正常的 |
% | 取余 | 获取的是两个做除法的余数 |
注意事项;
/和%的区别:两个数据做除法,/取结果的商,%取结果的余数。
整数操作只能得到整数,要想得到小数,必须有浮点数。
字符的+操作
拿字符在计算机地层对应的数值来进行计算的
‘A’ >>> 65 A-Z是连续的
‘a’ >>> 97 a-z是连续的
‘0’ >>> 48 0-9是连续的
算术表达式中包含多个基本数据类型的值的时候,整个算术表达式的类型会自动进行提升
提升规则:
byte类型,short类型和char类型将被提升到int类型
整个表达式的类型自动提升到表达式中最高等级操作数同样的类型
等级顺序:byte,short,char >>> int >>> long >>> float >>> double
字符串的+操作
当+操作中出现字符串时,这个+是字符串连接符,而不是运算连接符
范例:小雨+666
结果 :小雨666
在+操作中,如果出现了字符串,就是连接运算符,否则就是算数运算。当连续进行+操作时,从左到右逐个执行.
范例:1+99+小雨
结果:100小雨
赋值运算符
符号 | 作用 | 说明 |
---|---|---|
= | 赋值 | a=10,将10赋值给a |
+= | 加后赋值减后赋值 | a+=b,将a+b的值给a |
-= | 减后赋值 | a-=b,将a-b的值给a |
*= | 乘后赋值 | a*=b,将a*b的值给a |
/= | 除后赋值 | a/=b,将a/b的值给a |
%= | 取余后赋值 | a%=b,将a%b的余数给a |
注意事项:扩展的赋值运算符隐含了强制类型转换
自增自减运算符
符号 | 作用 | 说明 |
---|---|---|
++ | 自增 | 变量的值加一 |
-- | 自减 | 变量的值减一 |
注意事项:
++和--既可以放在变量的后边,也可以放在变量的前边
单独使用的时候,++和--无论是放在变量的前两还是后边,结果都是一样的
参与操作的时候,如果放在变量的后边,先拿变量参与操作,后者变量做++或者--
参与操作的时候,如果放在变量的前边,先拿变量做++或者--,后拿变量参与操作
最常见的方法:单独使用
关系运算符
符号 | 说明 |
---|---|
== | a==b,判断a和b的值是否相等,成立为true,不成立false |
!= | a!=b,判断a和b的值是否不相等,成立为true,不成立false |
> | a>b,判断a是否大于b,成立为true,不成立为false |
>= | a>=b,判断a是否大于等于b,成立为true,不成立为false |
< | a<b,判断a是否小于b,成立为true,不成立为false |
<= | a<=b,判断a是否小于等于b,成立为true,不成立为false |
注意事项
关系运算符的结果都是boolean类型,要么是true,要么是false
千万不要把==误写成=
逻辑运算符
最常用的逻辑运算符:短路与,短路或,非