0


【JAVA知识点每日一练】 —— 运算符的那些事


     都说**基础不牢地动山摇**,还真是那么回事!别小看这运算符,每个语法中运算符扮演者举足轻重的角色,稍微没用对,那可就犯了大错误!

    接下来跟随小梦,迈着**轻松且愉快**的步伐一起看看运算符的那些事吧~


🌊Java 语言支持的运算符

  • 算术运算符
+,-,*,/,%,++(自增),--(自减)
  • 赋值运算符
=  
  • 扩展赋值运算符
+=,-=,*=,/=
  • 关系运算符
>,<,>=,<=,==,!=
  • 逻辑运算符
&,|,    &&,||,!,^
  • 条件运算符
 &,|,^,~ , >>,<<,>>>
  • 位运算符
?:
    前面看到了JAVA支持这么多的运算符,运算符用的秒能简化不少的代码!认真复习一波~


💧算术运算符

** / 除法运算符** : 表示两个数相除运算

** % 取余运算符 :** 用来求余数的

public class TestOpe01{
        public static void main(String[] args){
                //打印结果:
                System.out.println(12/3);
                System.out.println(12%5);
                System.out.println(12/3.0);
                System.out.println(12%5.0);
        }
}
    **+ :**表示正数,表示相加操作,进行字符串的拼接
public class Test03{
        public static void main(String[] args){
                //表示正数:
                System.out.println(+5);//5
                //相加操作:
                System.out.println(5+6);//11
                System.out.println(5+'6');//59
                //字符串的拼接:
                //规则:+左右两侧的任意一侧有字符串,那么这个加号就是字符串拼接的作用,结果一定是字符串
                int num = 56;
                System.out.println("num="+num);//"num=56" ---> num=56
                System.out.println(5+6+"7");//11+"7"--->"117"  --->117
                System.out.println(5+'6'+"7");//59 +"7"--->"597" --->597
                System.out.println("5"+6+"7");//"56"+"7"  --->"567"--->567
                System.out.println("5"+'6'+"7");//"56"+"7"--->"567"--->567
                System.out.println("5"+'6'+'7');//"56"+'7'--->"567"---567
        }
}
    **++: **++单独使用的时候,无论放在前还是后,都是加1操作。参与到运算中的时候,看++在前还是在后,如果++在后:先运算,后加1。如果++在前,先加1,后运算。
int a = 5;
a++;//理解为:相当于  a=a+1 操作

a = 5;
++a;//理解为:相当于  a=a+1 操作

a = 5;
int m = a++ + 7;//先运算  m=a+7  再加1:  a = a+1

a = 5;
int n = ++a + 7;//先加1  a=a+1  再运算:  n = a+7


💧赋值运算符

    **=:**将等号右侧的值赋给等号左侧
int a = 30;
int b = 50;

💧扩展赋值运算符

    **a+=b  和  a=a+b  区别:**

** a+=b ** 可读性稍差 编译效率高 底层自动进行类型转换

** a=a+b** 可读性好 编译效率低 手动进行类型转换

    没想到小小运算符还有这等区别,别慌下面还有,我们接着看~        

💧关系运算符

            相信大家不管是学习中,还是工作中关系运算符的使用频率那是杠杠滴!小梦直接上代码带大家温习一遍,如有不清楚的请小伙伴们多练习练习~
//>,<,>=,<=,==,!=
//关系运算符最终结果:要么是true要么是false
System.out.println(5>11);//false
System.out.println(5<11);//true
System.out.println(5>=11);//false
System.out.println(5<=11);//true
System.out.println(5==11);//false
System.out.println(5!=11);//true
System.out.println((5<11)!=(9==12));//true

注意!关系运算符最终结果:要么是true要么是false


💧逻辑运算符

    **逻辑运算符:**进行逻辑运算的,运算符左右连接的都是 布尔类型的操作数,最终表达式的结果是布尔值。**要么是true,要么false。**

    **逻辑与 &:**只要有一个操作数是false,那么结果一定是false

    **短路与 &&:**效率高一些,只要第一个表达式是false,那么第二个表达式就不用计算了,结果一定是false

   **逻辑或 |:**只要有一个操作数是true,那么结果一定是true

   **短路或 ||:**效率高一些,只要第一个表达式是true,那么第二个表达式就不用计算了,结果一定是true

  **逻辑非 **!**:**相反结果

  **逻辑异或 ^:**两个操作数相同,结果为false,不相同,结果为true
// 逻辑与 &:只要有一个操作数是false,那么结果一定是false
System.out.println(true&true);
System.out.println(true&false);
System.out.println(false&false);
System.out.println(false&true);
                
// 短路与 &&:效率高一些,只要第一个表达式是false,那么第二个表达式就不用计算了,结果一定是false
System.out.println(true&&true);
System.out.println(true&&false);
System.out.println(false&&false);
System.out.println(false&&true);
                
// 逻辑或 |:只要有一个操作数是true,那么结果一定是true
System.out.println(true|true);
System.out.println(true|false);
System.out.println(false|false);
System.out.println(false|true);
                
// 短路或 || :效率高一些,只要第一个表达式是true,那么第二个表达式就不用计算了,结果一定是true
System.out.println(true||true);
System.out.println(true||false);
System.out.println(false||false);
System.out.println(false||true);
                
//逻辑非!:相反结果
System.out.println(!true);//false
System.out.println(!false);//true
                
//逻辑异或^ :两个操作数相同,结果为false,不相同,结果为true
System.out.println(true^true);
System.out.println(true^false);
System.out.println(false^false);
System.out.println(false^true);

💧条件运算符

** 三目运算符 **格式:a?b:c

    其中a是一个布尔类型的表达式,返回结果要么是true要么false,通过a的结果决定最终表达式的结果
  •     如果a的结果是true,那么表达式最终结果为b
    
  •     如果a的结果是false,那么表达式最终结果为c
    

🌊运算符的优先级别

    在这里呢小梦提醒大家,不要可以区级运算符的优先级,我们要在实际运用中逐渐去掌握,水到渠成。其实实际中我们也不会去写一些非常复杂的表达式,怎么方便我们怎么写。

    **优先级关系:**赋值<三目<逻辑<关系<算术<单目


文章对小伙伴们有帮助的话,请给小梦一个👍一个吧~ 感谢家人们~


标签: java 运算符

本文转载自: https://blog.csdn.net/weixin_42306958/article/details/123650293
版权归原作者 超梦梦梦梦 所有, 如有侵权,请联系我们删除。

“【JAVA知识点每日一练】 &mdash;&mdash; 运算符的那些事”的评论:

还没有评论