• JAVA 基础 / 第十三课:操作符 / JAVA的所有操作符2


    2018-03-07

    一、JAVA的逻辑运算符

    1.长路与 & 和 短路与 &&

    无论长路与还是短路与,两边的运算单元都是布尔值;都为真时,才为真;任意为假,就为假
    区别:1.长路与 两侧,都会被运算:2.短路与 只要第一个是false,第二个就不进行运算了

    public class HelloWorld {
        public static void main(String[] args) {
            //长路与  无论第一个表达式的值是true或者false,第二个的值,都会被运算
            int i = 2;
            System.out.println( i== 1 & i++ ==2  ); //无论如何i++都会被执行,所以i的值变成了3
            System.out.println(i);
             
            //短路与 只要第一个表达式的值是false的,第二个表达式的值,就不需要进行运算了
            int j = 2;
            System.out.println( j== 1 && j++ ==2  );  //因为j==1返回false,所以右边的j++就没有执行了,所以j的值,还是2
            System.out.println(j);     
             
        }
    } : 

    2.长路或 | 和 短路或 ||

    无论长路或还是短路或,两边的运算单元都是布尔值;都为假时,才为假;任意为真,就为真
    区别:1.长路或 两侧都会被运算;2.短路或 只要第一个是true的,第二个就不进行运算了

    public class HelloWorld {
        public static void main(String[] args) {
            //长路或  无论第一个表达式的值是true或者false,第二个的值,都会被运算
            int i = 2;
            System.out.println( i== 1 | i++ ==2  ); //无论如何i++都会被执行,所以i的值变成了3
            System.out.println(i);
             
            //短路或 只要第一个表达式的值是true的,第二个表达式的值,就不需要进行运算了
            int j = 2;
            System.out.println( j== 2 || j++ ==2  );  //因为j==2返回true,所以右边的j++就没有执行了,所以j的值,还是2
            System.out.println(j);     
             
        }
    } 

    3.取反 !

    取反! :真变为假,假变为真。

    public class HelloWorld {
        public static void main(String[] args) {
            boolean b = true;
             
            System.out.println(b); //输出true
            System.out.println(!b);//输出false
             
        }
    } 

    4.异或 ^

    异或^ :不同,返回真,相同,返回假。

    public class HelloWorld {
        public static void main(String[] args) {
            boolean a = true;
            boolean b = false;
             
            System.out.println(a^b); //不同返回真
            System.out.println(a^!b); //相同返回假
     
        }
    }

    二、JAVA的三元操作符

    1.三元操作符

    表达式?值1:值2  如果表达式为真 返回值1;如果表达式为假 返回值2
    关于if语句的详解讲解在后面章节

    public class HelloWorld {
        public static void main(String[] args) {
     
            int i = 5;
            int j = 6;
     
            int k = i < j ? 99 : 88;
     
            // 相当于
            if (i < j) {
                k = 99;
            } else {
                k = 88;
            }
     
            System.out.println(k);
     
        }
    }
  • 相关阅读:
    Linux命令学习—— fdisk -l 查看硬盘及分区信息
    UE4 Runtime下动态给Actor添加组件
    如何批量下载网站网页
    ue4 motage
    帧同步相关
    张瀚荣:如何用UE4制作3D动作游戏
    游戏服务器架构演进(完整版)
    Digital Mike头发制作及渲染的深度揭秘
    [UE4]如何替换角色Mesh上的Material材质
    [UE4]用C++如何创建Box Collision
  • 原文地址:https://www.cnblogs.com/Parker-YuPeng/p/8522494.html
Copyright © 2020-2023  润新知