• java基础运算符 之 逻辑运算符


    本文会用到关系运算符
    如果不了解关系运算符请先观看
    https://blog.csdn.net/weixin_45966674/article/details/125473421?spm=1001.2014.3001.5501
    逻辑运算符主要就是逻辑判断包括以下几种
    在这里插入图片描述
    首先我们看 (&)且

    public class HelloWorld {
        public static void main(String args[]) {
    		int i = 10;
    		System.out.println((i > 9) & (i < 20));
    		System.out.println((i > 9) & (i != 10));
        }
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    输出结果如下
    在这里插入图片描述
    首先我们来看 这两个条件 第一个是 i 大于 9 且 i 小于 20
    i本事的值 为 10 显然 10是大于9的 而且 10 也确实小于20 所以第一个的两个条件同时成立了 终止的结果也给我们返回了 true 真
    而第二个 i 大于 9 刚才看过 确实是成立的 但第二个条件换成了非等于 判断i不等于10 但上面写的很明白 i他就是等于10的 因而第二个条件 i不等于10是不成立的
    最终返回了 falae &且这个运算符要求参与判断的条件全部成立 只要其中一个条件不成立 最终结果都是不成立

    首先我们看 (|)或

    public class HelloWorld {
        public static void main(String args[]) {
    		int i = 10;
    		System.out.println((i > 9) | (i != 10));
    		System.out.println((i < 9) | (i != 10));
        }
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    输出结果如下
    在这里插入图片描述
    首先我们看到 上一次用& 不成立的条件就把中间的运算符改为 | 就变成
    true成立了 因为i 大于 9的条件成立了
    而第二个 i是10 自然不会小于 9 而 i就是10 所以i不等于10也是不成立的
    | 或 简单说 就是 条件中只要有一个成立了 整体就会返回为成立
    除非条件全部不成立 则返回 不成立 false

    然后是 ^ 亦或

    public class HelloWorld {
        public static void main(String args[]) {
    		int i = 10;
    		System.out.println((i > 9) ^ (i < 20));
    		System.out.println((i > 9) ^ (i != 10));
        }
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    输出结果如下
    在这里插入图片描述
    第一个条件应该很多朋友都看懵了 i的值是10 那么 大于 9 和 小于 20 这两个条件不应该都是成立的嘛 怎么返回了个 假false
    那么我们来看第二个 i 是10 小于 9成立 但i是等于10 而不是不等于10 第二个条件不成立
    第二个判断 一个成立一个不成立 亦或简单说就是在找不同
    亦或就是 如果也算中条件 全部成立 或 全部不成立 则 直接返回不成立 false
    要既有成立的 又有不成立的 最终整体才会返回成立 true

    最后就是 !(非)

    public class HelloWorld {
        public static void main(String args[]) {
    		int i = 10;
    		System.out.println(!(i > 9));
    		System.out.println(!(i != 10));
        }
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    输出结果如下

    在这里插入图片描述
    首先 第一个 i的值为10 它大于9 是应该成立的
    i的值是10 所以判断他不等于10 应该是不成立的
    但结果刚好反了过来
    简单说 非就是来找茬的 条件原本是成立的 则它返回不成立
    如果原本不成立 则它返回true成立
    但非成立是就是在告诉你这是有问题的
    运算符可以同时也算多个条件 远不止两个
    例如
    (条件1) | (条件2) | (条件3)
    不同运算符也可以同时使用
    例如说
    (条件1) && (条件2 | 条件3)
    这个可以大家有点蒙 我说说判断逻辑 首先 且 判断的是 条件1 和 另一个条件 而另一个条件用的或 条件2和条件3 因为关联他们的是或 也就是说 条件2和条件3 只要成立一个 则另一个条件成立
    然后条件1 和另一个条件必须成立 因为关联他们的是且

    !(条件1 | 条件2)
    这是非和一个条件的结合 你们把条件写成真实的条件测一下结果
    逻辑运算符的用法非常灵活 需要大家慢慢摸索

  • 相关阅读:
    嵌入式开发如何进行源代码保密工作
    【学习笔记】 排列组合
    前端不使用 il8n,如何优雅的实现多语言?
    分布式之业务高可用
    三面:请设计一个虚拟DOM算法吧
    面试算法31:最近最少使用缓存
    【MySQL篇】第二篇——库的操作
    Nginx配置文件
    自动化测试框架 —— pytest框架入门篇
    动动脑筋:蜡烛定时器
  • 原文地址:https://blog.csdn.net/weixin_45966674/article/details/125474939