Java运算符

Java运算符

温馨提示:本文仅适用于有一定Java代码编写基础人士回顾相关知识,讲解并不详述。如您希望通过代码回顾相关知识或了解相关用法,那么本文适用。

理论联系实际,只有通过实践,才能深入学习理论,以下通过代码及简单的注释概略关系运算符、逻辑运算符及短路运算符的使用和特点。

关系运算符
package com.javase.data_option;
/*
    关系运算符:<、<=、==、>、>=、!=
    1、关系运算符得到的是一个boolean,最终返回true或者false值
    2、判断两个数字是否相等用“==”符号,注意“=”是赋值操作,不要用错!
 */
public class RelationalOperators {
    public static void main(String[] args){
        int a = 20;
        int b = 30;
        System.out.println("a>b?:"+(a>b)); // false
        System.out.println("a>=b?:"+(a>=b)); // false
        System.out.println("a<b?:"+(a<b)); // true
        System.out.println("a<=b?:"+(a<=b)); // true
        System.out.println("a==b?:"+(a==b)); // false
        System.out.println("a!=b?:"+(a!=b)); // true
    }
}
逻辑运算符
package com.javase.data_option;
/*
    逻辑运算符:连接关系表达式的形成复杂的逻辑表达式,以此判断逻辑表达式是否成立。
    逻辑与&:左右两边表达式同时为true最终结果才为true,否则为false。
    逻辑或|:左右两边表达式只要一个为true结果就为true,否则为false。
    逻辑异或^:左右两边表达式结果相同为false,不同为true。
    逻辑非!:取反操作,单目运算符,true取反后为false,false取反后为true。只能应用于表达式、true或者false前。
 */
public class LogicalOperators {
    public static void main(String[] args){
      /*  // 1、左边 & 右边 同时为true,最终结果才为true,否则为false
        System.out.println("&并且:");
        System.out.println(true&true); // true
        System.out.println(true&false); // false
        System.out.println(false&false); // false
        //小试牛刀
        System.out.println("小试牛刀:");
        int a = 10;
        int b = 20;
        int c = 30;
        System.out.println(a>b & b>c); // false & false -> false
        System.out.println(a<b & b<c); // true & true -> true
        System.out.println(a<b & b>c); // true & false -> false
        System.out.println("-------------------------");
*/
       /* // 2、左边 | 右边 只要一个为true,最终结果为true,否则为false
        System.out.println("|或者:");
        System.out.println(true|true); // true
        System.out.println(true|false); // true
        System.out.println(false|false); // false
        //小试牛刀
        System.out.println("小试牛刀:");
        int a = 10;
        int b = 20;
        int c = 30;
        System.out.println(a>b | b>c); // false | false -> false
        System.out.println(a<b | b<c); // true | true -> true
        System.out.println(a<b | b>c); // true | false -> true
        System.out.println("-------------------------");
    */

        // 3、左边 ^ 右边 结果相同为false,结果不同为true
        System.out.println("^异或:");
        System.out.println(true^true); // false
        System.out.println(true^false); // true
        System.out.println(false^false); // false
        //小试牛刀
        System.out.println("小试牛刀:");
        int a = 10;
        int b = 20;
        int c = 30;
        System.out.println(a>b ^ b>c); // false ^ false -> false
        System.out.println(a<b ^ b<c); // true ^ true -> false
        System.out.println(a<b ^ b>c); // true ^ false -> true
        System.out.println("-------------------------");

        // 4、逻辑非 !true->false  !false->true
        System.out.println("!逻辑非:");
        System.out.println(!false); // true
        System.out.println(!true); // false
        System.out.println("小试牛刀:");
        System.out.println(!(a<b)); // !true->false
        System.out.println("-------------------------");

    }
}
短路运算符
package com.javase.data_option;
/*
    短路运算符:短路与&&、短路或||
    &&:功能和&(一个为false即为false)一样,只不过具备短路功能。当左边为false时,右边不会再去执行,直接返回false结果。
    ||:功能和|(一个为true即为true)一样,只不过具备短路功能。当左边为true时,右边不会再去执行,直接返回true结果。
 */
public class ShortCircuitOperators {
    public static void main(String[] args){
      /*  // 1、短路与&& 与 & 对比
        int a = 10;
        int b = 20;
        int c = 10;
        int d = 20;
        System.out.println("逻辑与&:"); // & 左边和右边都会执行
        System.out.println((a++ > 100)&(b++ <30)); // 10>100 false & 20<30 true ->false
        System.out.println(a); // 11
        System.out.println(b); // 21

        System.out.println("短路与&&:"); // 左边为false 右边不会再执行
        System.out.println((c++ > 100)&&(d++ <30)); // 10>100 false && ->false
        System.out.println(c); // 11
        System.out.println(d); // 20
        */

        // 2、短路或|| 与 | 对比
        int a = 10;
        int b = 20;
        int c = 10;
        int d = 20;
        System.out.println("逻辑或|:"); // | 左边和右边都会执行
        System.out.println((a++ > 1)|(b++ >100)); // 10>1 true | 20>100 false ->true
        System.out.println(a); // 11
        System.out.println(b); // 21

        System.out.println("短路或||:"); // 左边为true 右边不会再执行
        System.out.println((c++ > 1)||(d++ >100)); // 10>1 true || ->true
        System.out.println(c); // 11
        System.out.println(d); // 20
    }
}
posted @ 2022-11-05 15:44  Cara_Smith  阅读(64)  评论(0编辑  收藏  举报