运算符与表达式

  表达式是运算符和操作数的有效组合。运算符指出了表达式需要进行的操作,操作数指出了运算符的数据来源。


一、运算符的分类

  Java中的运算符包括算术运算符、逻辑运算符、赋值运算符、比较运算符、位运算符、三元运算符等。

算术运算符:
“%”,用于取模运算,”a%b == a mod b”,也就是取余运算。例如:”b=12%5;b=2;”。

一元运算符:
“++”、”–”,自增(减)运算符,在原操作数的基础上自加或自减1;

运算符在操作数前,先自增或自减,后参与算术运算;
运算符在操作数后,先参与算术运算,后自增或自减;

位运算符:
“&” 、 “|”对操作数执行的是按位与运算或按位或运算,

1 & 1 = 0 ;
1 & 0 = 0 ;
0 & 0 = 0 ;
1 | 1 = 1 ;
1 | 0 = 1 ;
0 | 0 = 0 ;

“&&”、”||”对操作数执行逻辑与或逻辑或运算,结果为boolean值。

短路原则
A && B ,当表达式A = false 时,表达式B不会执行;
A || B ,当表达式A = true 时,表达式B不会执行;

&&,一假为假  ||,一真为真  !,取反



二、运算符的优先级

  其中,括号的优先级最高,赋值运算符的优先级最低;剩下的运算符类别划分为一元运算符、二元运算符和三元运算符,一元>二元>三元;二元运算符又分为常用的算术运算符、不常用的逻辑运算符以及比较运算符;同一层级中,(* / %) > (+ -),(& |) > (&& ||)。“>”理解为“高于”。

这里写图片描述




Tip:
int apple = 5280 ;
int microsoft = 6000 ;
int nexus = 5000 ;
求表达式”apple * microsoft * nexus + ++apple”运行结果;

分析:

“+”为最后需要执行的算术运算,此时:

ExpA = apple * microsoft * nexus ;
ExpB = ++apple;

原表达式等价于”A + B”,分别计算表达式A、B的结果,最后作求和运算。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值