码迷,mamicode.com
首页 > 编程语言 > 详细

java 运算符

时间:2019-09-29 09:16:27      阅读:104      评论:0      收藏:0      [点我收藏+]

标签:出现   没有   括号   算术   大于等于   ++   情况下   现象   布尔类型   

运算符:
*算术运算符
*逻辑运算符
*字符串连接运算符
*三元运算符
*赋值类运算符

关于java编程中运算符之:算术运算符
+ 求和
- 相减
* 乘积
/ 商
% 求余数【取模】

++ 自加1
-- 自减1
注意:一个表达式当中有多个运算符,运算符有优先级,不确定的加小括号,优先级得到提升。

//++出现在变量后
//规则:先做赋值运算,再对变量中保存的值进行自加1.
int a=100;//101
int b=a++;//100

//++出现在变量前
//规则:先进行自加
int m=20;//21
int n =++m;//21

关系运算符:
> 大于
>= 大于等于
< 小于
<= 小于等于
== 等于
!= 不等于

= 是赋值运算符
== 是关系运算符(关系运算符的运算结果一定是布尔类型:true/false)

关系运算符的运算原理:
int a=10;
int b=10;
a>b比较的时候,比较的是a中保存的10这个值和b这个值之间的大小比较。

逻辑运算符:
& 逻辑与
| 逻辑或
! 逻辑非(!false)//true||(!true)//false
^ 逻辑异或(true^false)//true || (false^false)//false || (true^true)//false

&& 短路与
|| 短路或

1、逻辑运算符要求两边的算子都是布尔类型,并且逻辑运算符最终的运算结果也是一个布尔类型。
2、短路与和逻辑与最终的运算结果是相同的,只不过短路与存在短路现象。
3、短路或和逻辑或最终的运算结果是相同的,只不过短路或存在短路现象。

逻辑与和短路与
如:int x=10;
int y=8;
//逻辑与
system.out.println(x<y&++x<y);
system.out.println(x);//11;两边运算后再进行比较
//短路与
system.out.println(x<y&&++x<y);
system.out.println(x);//10;先比较后再运算
x<y 结果是false,整个表达式结果已经确定是false;
所有后面的表达式没有再执行,这种现象被称为短路现象。
短路与才会有短路现象,逻辑与是不会存在短路现象的。

从某个角度来看,短路与更智能,由于后面的表达式可能不执行,所以执行效率较高。这种方式在实际的开发中使用较多。短路与比逻辑与使用的多。短路与更常用。

但在某些特殊的也无逻辑当中,要求运算符两边的算子必须全部执行,此时必须使用逻辑与,不能使用短路与,使用短路与可能导致右边的表达式不执行。

什么情况下发生短路或?
*第一个表达是执行结果是true,会发生短路或。
什么情况下发生短路与?
*第一个表达式执行结果是false,会发生短路与。

三元运算符/三目运算符/条件运算符
1、语法规则:
布尔表达式?表达式1:表达式2
2、三元运算符的执行原理?
当布尔表达式的结果是true的时候,选择表达式1作为整个表达式的执行结果
当布尔表达式的结果是false的时候,选择表达式2作为整个表达式的执行结果
如:char c= sex? ‘男‘:‘女‘;

java 运算符

标签:出现   没有   括号   算术   大于等于   ++   情况下   现象   布尔类型   

原文地址:https://www.cnblogs.com/zhuojinyong/p/11605623.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!