zoukankan      html  css  js  c++  java
  • 逻辑运算符

    前面我说了三种运算符:算术、赋值、比较运算符。

    这里的逻辑运算符算是一个比较重要的。

    首先我们的逻辑运算符也有六种(莫名其妙又是六种...)

    这些逻辑运算符可以用来连接多个表达式

    这些表达式无非就是一些比较运算符

    分别是:

    &

    只有两边的结果都为true时,最终的结果才是true,否则就是false

    代码图: 

    结果就是:

    我们可以总结一下画出一个表格:

    只不过我们的&比较低级,为什么这样说呢?

    假如第一个表达式是false,是不是就可以判断这个最后的结果是false了

    假如第一个false,&还是会将所有的表达式去执行

    我们用代码来实验一下:

    结果是:

    我们可以看到val1的值变成了31,这就证明了后面的那个表达式也执行了

    |

     只有两边的结果都为false时,最终的结果才是false,否则就是true

    代码图: 

    运行结果:

    我们也可以画出一个表格来记忆:

    只不过我们的|也比较低级,为什么这样说呢?

    假如第一个表达式是true,是不是就可以判断这个最后的结果是true了

    假如第一个true,|还是会将所有的表达式去执行

    验证方法与上面一样:

     运行结果:

    这里val1也变成了22,表示后面那个表达式也执行了

     &&

    判断的结果和&一模一样,

    表格和&的一样

    &&比较智能:

    就是&&遇到一个表达式如果是false的话,后面的表达式就不会去执行

    代码实测:

    运行结果:

    这次val1的值还是50,这就充分的说明了后面的表达式没有运行

    ||

    判断的结果和|一模一样,

    表格和|的一样

    ||也比较智能:

    就是||到一个表达式如果是true的话,后面的表达式就不会去执行

    代码实测:

    结果:

    这次val1的值还是30,这就充分的说明了后面的表达式没有运行

    ^:

    这个东西比较特殊,一般不会使用它

    如果两个表达式的结果相同最终的结果就是false

    表达式结果不同最终结果就是true

    这个逻辑有点难理解。

    我们还是看一下代码吧:

    运行结果:

    画个表格来表示一下:

    这个就很好理解了

    就是吧结果取反的意思。

    上图:

    结果:

    最后:

    &&和||又叫做“短路运算符”,因为他的特性

    如:&&遇到一个false就会短路,后面的不去执行了

    我们的这六个逻辑运算符不止可以连接两个表达式,

    还可以连接多个表达式

    这里只是为了简化连接的两个表达式

  • 相关阅读:
    Java 如何有效地避免OOM:善于利用软引用和弱引用
    LRU缓存实现(Java)
    Java实现LRU(最近最少使用)缓存
    HashSet,TreeSet和LinkedHashSet的区别
    IIS-详解IIS中URL重写工具的规则条件(Rule conditions)
    IIS-代理
    IIS-新建网站
    IIS-反向代理配置&&插件安装
    IIS-C#项目环境搭建
    IIS-Windows10如何安装
  • 原文地址:https://www.cnblogs.com/menghujava/p/9644739.html
Copyright © 2011-2022 走看看