Java基础入门篇(六)——Java运算符

共 4608字,需浏览 10分钟

 ·

2023-07-15 06:21


点击上方“

Java进阶学习交流

”,进行关注


后台回复“

Java

”即可获赠Java学习资料






借问汉宫谁得似,可怜飞燕倚新妆。


前面几篇文章用Java带大家一起了解了几个游戏小项目,感兴趣的小伙伴可以点击文章观摩下,手把手教你用Java打造一款简单故事书(上篇)手把手教你用Java打造一款简单故事书(下篇)手把手教你用Java打造一款简单考试系统(上篇)手把手教你用Java打造一款简单考试系统(下篇)接下来的几篇文章是关于Java基础的,希望对大家的学习有帮助,欢迎大家在讨论区留言。


历史Java基础文章:



Java基础入门篇(一)——Java虚拟机和运行环境



Java基础入门篇(二)——Java注释、关键字和标识符



Java基础入门篇(三)——Java常量、变量



Java基础入门篇(四)——Java变量数据类型和基本数据类型



Java基础入门篇(五)——Java变量类型的转换和运算符



一、比较运算符和逻辑运算符用作条件判断



1.比较运算符用于判断两个数据大小,例如大于、等于、小于、不等于。比较的结果是一个布尔值(true和false)。



2.逻辑运算符用于布尔型数据进行操作,结果也是一个布尔值(true和false)。在逻辑上“&&(AND)”、“||(OR)”、“!(NOT)”。



3.当使用逻辑运算符,会出现一个“短路”现象,例如(1>2)&&(1<3)时,如果能够确定左边表达式1>2运行结果为false,则系统会默认没必要去执行右边的1<3的表达式。同理,在(1<2)||(1<3)时,如果能够确定左边表达式1<2运行结果为true,则系统默认没有必要去执行右边1<3的表达式。



4.比较运算符和逻辑运算符具体示例如下所示:




int i=3,j=2,k=4;


System.out.println(i>j || ++i>=4);


System.out.println("i=" + i);


System.out.println(i<j || ++i>=4);


System.out.println("i=" + i);



运行结果:




true


i=3


true


i=4



这个结果是怎么得出的呢?



首先看定义了3个int类型的变量i=3,j=2,k=4。然后看第一条输出语句i>j表达式相当于3>2的结果为true,因为是||只要满足左边表达式或右边表达式其中一个就可以,结果为true。第二条输出语句是i=3,因为定义int类型的变量i=3。第三条输出语句i<j表达式相当于3<2是不成立的结果为false,因为是||再看右边的表达式++i>=4,i自增后的值为4,所以表达式结果为true。








二、三目运算符



1.三目运算符:用来完成简单的选择逻辑,也就是根据条件判断,从两个选择中选择一种执行。



2.三目运算符的格式




变量=(条件表达式)?表达式1:表达式2;



3.三目运算符的运算规则



首先是判断条件表达式,结果是一个布尔值。如果结果为true,运算结果为表达式1,反之,如果结果为false,运算结果为表达式2。

4.例如求两个数x、y中的最大值,如果用if...else来实现具体代码如下所示:




int x=0;


int y=2;


int max;


if(x>y){


max=x;


}else{


max=y;


}


System.out.print("x、y中的最大值为"+max);



输出结果为x、y中的最大值为2。我们可以用三目运算符代替这些代码,更加方便。




int max=x>y?x:y;






三、原码、反码、补码



原码:在java中数值的绝对值的二进制数,对于整数而言,该最高位的0表示正数,最高位的1表示负数。



用简单一个案例int a1=5,a2=-5:



5的原码:00000000 00000000 00000000 00000101



-5的原码:10000000 00000000 00000000 00000101



从上面这个案例,对于原码而言,绝对值相等的正数和负数只是符号位不同,原码是整数在不进行操作,是以二进制形式显示。



反码:反码正数它的反码就是它的原码,也就是说正数反码和原码相同。例如:



5的原码:00000000 00000000 00000000 00000101



5的反码:00000000 00000000 00000000 00000101



对于负数,负数的反码在原码基础上,它的符号位是不变的,数值是取反例如:



5的原码:00000000 00000000 00000000 00000101



-5的原码: 10000000 00000000 00000000 00000101



-5的反码:11111111 11111111 11111111 11111010



补码:对正数来说,正数的补码是它的原码,对负数来说,负数的补码在它这个负数的反码基础上进行加1



例如:



-5的反码:11111111 11111111 11111111 11111010



-5的补码:11111111 11111111 11111111 11111011








四、运算符的优先级



运算符的优先级数值越小,优先级越高。



4a2067588a0836e95c34f184aa179a22.webp



例如:




int a=3;


int b=a+3*a;


System.out.print(b);



输出的结果是12,首先这个优*先级要高于+,先算3 *a得到结果是9,然再和a相加,得到的结果是12。




int a=3;


int b=(a+3)*a;


System.out.print(b);



输出的结果是18,首先()优先级是最高的,所以先算a+3得到结果6,然后再乘以3,最终的结果是18。








五、总结



本文主要介绍了比较运算符和逻辑运算符用作条件判断,三目运算符,原码、反码、补码,运算符的优先级,详细的介绍逻辑运算和比较算符一般是用作条件的判断,通过简单的案例解释逻辑运算符的短路现象。



三目运算符的用法,介绍了它的格式和规则,使大家能够理解这个三目运算符。原码、反码、补码通过例子来解释这三种使用。运算符的优先级数值越小,优先级越高。通过这些的学习,帮助大家能够理解这些用法。



------------------- End -------------------


往期精彩文章推荐:


6e589fe7aaf26a13650cd7d05f2fcf34.webp


欢迎大家点赞,留言,转发,转载,感谢大家的相伴与支持



想加入Python学习群请在后台回复【
入群



万水千山总是情,点个【
在看
】行不行




浏览 75
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报