佛山h5网站公司,淮安住房和城乡建设厅网站,苏州区网站建设,电子商务发展趋势有哪些这里写目录标题 一、关系运算符#xff08;比较运算符#xff09;二、⭐逻辑运算符1、 和 2、|| 或 |3、#xff01;4、^ 三、赋值运算符四、三目运算符#xff08;条件运算符#xff09;五、运算符优先级 在讲之前先明确几个概念#xff1a; 1、单目运算… 这里写目录标题 一、关系运算符比较运算符二、⭐逻辑运算符1、 和 2、|| 或 |3、4、^ 三、赋值运算符四、三目运算符条件运算符五、运算符优先级 在讲之前先明确几个概念 1、单目运算符是只有一个变量or 常量在左侧或者右侧的而双目运算符是左右两边都有变量or 常量的eg10、算数运算符以 ‘/’、‘%’、‘’为主去讲解Java超详细版本这篇文章中a、–a是单目运算符而a b、a % b是双目运算符今天的文章中“”是三目运算符。 2、Java中运算顺序大部分都是从左往右的左结合性只有单目运算符、赋值运算符和三目运算符是从右往左的右结合性敲重点啦就我个人理解而言所谓的结合性是指两个或两个以上相同的运算符出现才需要区分执行顺序可能有歧义赋值运算符和三目运算符看下面的文章即可单目运算符的就不写了差不多意思。 一、关系运算符比较运算符
关系运算符的结果都是boolean型要么是true要么是false其常用在if结构的条件或者循环结构的条件中。 除了最后一个到面向对象的时候在详细讲解其他都很简单和数学上的差不多就不花时间写了。
使用细节 ① “”不能误写成“”。 ② 结果只能为true或者false。 ③ 我们称a b、 a b等为关系表达式。
二、⭐逻辑运算符
这里的、|、^只研究结果是true和false的情况不涉及位运算的情况有兴趣的可以看一下java中的“”、“|”、“^”、“~”运算符怎么用 Java 运算符我后期写进制的笔记的时候可能会再次详细介绍这方面这里就先不介绍了怕写文章写的很糊涂。 先直接来规则其实你记住就可以了背多芬
名称语法特点短路与 条件1 条件2两个条件都为true结果为true其余情况为false逻辑与 条件1 条件2同上短路或 ||条件1 || 条件2只要有true就为true没有true就为false逻辑或 |条件1 | 条件2同上取反条件如果条件本身成立结果转变成false否则为true异或^条件1 ^ 条件2若两者不同则true否则为false
1、 和
为什么Java中有“”和“”呢主要是因为应用场景不同但是实际工作中 和 || 更常用。 和 的使用区别 Ⅰ、如果第一个条件为false则第二个条件不会进行判断直接输出结果false避免了不必要的条件评估效率更高。 Ⅱ、不管第一个条件是否为false第二个条件都要进行判断效率低。
上代码
从代码截图可以看出两个if判断中都没有同时满足true的条件所以执行不了if改成执行else里面的语句。那么两者区别在哪呢我们可以看到结果截图中初始b 2c 2而最后b 2c却等于3了这就是由于 左边的条件已经判断为false不会再运行后面的条件导致b没有变化而不管左边是不是false都要执行右边的条件所以c变化为3了。
2、|| 或 |
|| 和 | 的使用区别 Ⅰ、||如果第一个条件为true则第二个条件不会进行判断直接输出结果true避免了不必要的条件评估效率更高。 Ⅱ、|不管第一个条件是否为true第二个条件都要进行判断效率低。 和上面一样的道理不举例子了。
3、
其实就是取反true -- falsefalse -- true。
4、^
异或异或必须左右要异才行所以异就会有true否则为false。 下面是韩顺平老师出的几道题大家可以练练手
int x 5;
int y 5;
if( x 6 y 6)x 11;
System.out.println(x x , y y); //x6, y6int x 5;
int y 5;
if( x 6 y 6)x 11;
System.out.println(x x , y y); //x6, y5int x 5;
int y 5;
if( x 5 | y 5)x 11;
System.out.println(x x , y y); //x11, y6int x 5;
int y 5;
if( x 5 || y 5)x 11;
System.out.println(x x , y y); //x11, y5boolean x true;
boolean y false;
short z 46;
if( (z 46) (y true))z;
if( (xfalse) || (z 49)) //记住“||”左边是false的时候要判断右边是否为true/falsez;
System.out.println(z z); //50答案在语句后面要记住上面的规则哦若想不出来可以在评论区提问
三、赋值运算符
单一的赋值是 “”下面的图片上是复合赋值运算符。 其实很简单提示一下上面的、、等的是位运算有学过进制的可以看这个链接了解 Java运算符 | 菜鸟教程
使用细节 ① a 3 等价于 a a3其他也一样。 ② 复合赋值运算符会进行类型转换。
byte b 2;
b 3; //其实质b (byte)(b3)
b; //b (byte)(b1)什么意思呢我们之前在类型转换的文章中就提过byte、short、char任意组合最终得到的结果类型都为int型这是没错的但是赋值运算符会将这个结果强制转换成做左边变量本身的类型前提是不超过精度范围所以最终 int -- byte。 ③ 运算顺序从右往左右结合请看图片。 图1是简单运用可能和上边结合性的那段话有点矛盾那就看第二张图吧 图2是我觉得能代表右结合性的例子我们能运用就行不必太纠结概念。
四、三目运算符条件运算符
基本语法条件表达式 表达式1 表达式2 运算规则 Ⅰ、如果条件表达式为true运算后的结果是表达式1表达式2不会执行。 Ⅱ、如果条件表达式为false运算后的结果是表达式2表达式1不会执行。 直接看代码理解喽 使用细节 ① 表达式1和表达式2的结果要符合左边变量的精度范围超过就会报错。 ②三目运算符本质上是 if – else --语句
int result a b ? a : b--;//等价于
if(a b)result a;
elseresult b--;③韩顺平老师的课上说三目运算符是从左往右的但是我查资料的时候觉得不是所以我还是按照自己的理解来就认为三目运算符是从右往左的右结合性。
五、运算符优先级
1、运算符有不同的优先级所谓优先级就是表达式运算中的运算顺序。 Ⅰ、从上往下优先级降低第一行优先级最高如果想提升优先级可以用最后一行优先级最低。 Ⅱ、若同行的出现在表达式中按照左边的 L-R 或者 R-L 进行计算即可。 2、只有单目运算符赋值运算符、三目运算符是从右往左运算的。 本人正在B站跟着韩顺平老师学Java非广告所以做个笔记仅供学习文章虽标为原创但大体思路是韩顺平老师的授课思路在此基础上加上了自己的理解不喜勿喷哦。 大家一起学一起进步 各位宝子们如果觉滴还不错的话可以点个赞 or 收个藏 or 打个赏哦佛系博主一个。 今天吃钵钵鸡啦哈哈哈哈哈哒干饭去。