Java学习笔记13——算术运算符、赋值运算符、比较运算符

运算:
对常量和变量进行操作的过程称之为运算
运算符:
对常量和变量进行操作的符号称之为运算符
操作数(类似于 2 变量b 'a'):
参与运算的数据称之为操作数
表达式(类似于1+1 'b'+2):
用运算符,把常量或者变量连接起来的并且符合java语法的式子,我们称之为表达式
不同运算符连接起来的式子体现的是不同类型的表达式
 
运算符分类:
算数运算符:
+,-,*,/,%,++,-- (/符号表示的是整除的意思,并且取的结果是商的整数部分)

 

 

/符号表示的是整除的意思,并且取的结果是商的整数部分

 

 

如果我们就想让结果有小数表示,怎么办呢
只需要将其中一个变量变成浮点类型参与运算就可以了
 

 

 

但是如下图:
System.out.println(3/4*1.0);
这样是不行,结果是0.0 因为按照运算顺序,先除后乘了
 
应该如下图所示:
System.out.println(3/(4*1.0));
 
 
运算符优先级图表:
运算符的优先级(从高到低)
优先级
描述
运算符
1
括号
()、[]
2
正负号
+、-
3
自增自减,非
++、--、!
4
乘除,取余
*、/、%
5
加减
+、-
6
移位运算
<<、>>、>>>
7
大小关系
>、>=、<、<=
8
相等关系
==、!=
9
按位与
&
10
按位异或
^
11
按位或
|
12
逻辑与
&&
13
逻辑或
||
14
条件运算
?:
15
赋值运算
=、+=、-=、*=、/=、%=
16
位赋值运算
&=、|=、<<=、>>=、>>>=
 
如果在程序中,要改变运算顺序,可以使用()。
 
%符号表示取余,如下图所示结果为3
System.out.println(3%4);
%算术运算符参与运算时,进行的是除法,但是结果取的是余数(注意不是小数部分)
 
++,--
++表示的是自增1,单独使用的时候,结构没有任何影响,放前放后结果一样
--表示的是自减1,单独使用的时候,结果没有任何影响,放前放后结果一样
注意:结合表达式使用的时候,不论是++还是--,放在前面先赋值后做自增或者自减

 

 

如上图所示先把a赋值给c,b赋值给d,然后a自增1,b自增1
 
自减同样的规律

 

 

注意:如果放在前面,是先自加或者自减,然后再赋值

 

 

 

 

赋值运算符:
=,+=,-=,*=,/=,%=
最基本的赋值运算符是=

 

 

看程序写结果
 
+=

 

 

-=

 

 

*=,/=,%=

 

 

 

 

面试题:
面试题 short s=1, s = s+1; short s=1, s+=1; 上面两个代码有没有问题,如果有,那里有问题
s+=1,底层进行了转换,但是不是我们想当然的转化为s=s+1,而是转化成了s=(s的数据类型)(s+1)
默认包含了强制类型转换
 
 
比较运算符、

 

 

关系运算符:
==与=的区别:
=是一个赋值运算符
a=2;
 
 
==是一个关系运算符,进行比较操作
(a==2);
 
 
==,!=,<,>,<=,>=
关系运算符的结果要么是true要么是false,所以关系运算符的结果是一个布尔类型(boolean型)
 

 

 

>=的优先级比=高(由运算符优先级图标可以查看)
 
 
 
 
 
 

 

posted @ 2021-11-29 19:38  欧朋  阅读(238)  评论(0)    收藏  举报