Java基础入门篇(六)——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学习群请在后台回复【 入群

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


浏览 58
点赞
评论
收藏
分享

手机扫一扫分享

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

手机扫一扫分享

分享
举报