逻辑运算是在关系运算基础之上的运算,能处理更加复杂的问题

  逻辑运算的结果是 true 或 false

  一、逻辑运算的种类:

    在java的逻辑运算符中,有这么四类&&(短路与)、&(与)、||(短路或)、|(非短路或)

      使用规则:

      (1)& 可以用作逻辑与的运算符,表示逻辑与(and)

       a、当运算符两边的表达式的结果都为true时,整个运算结果才为true,否则,只要有一方为false,则结果为false

       b、无论第一个判断条件是否成立,逻辑运算符前后两个条件都会进行判断

      (2)&& 可以用作逻辑与的运算符,表示逻辑与(and)

      a、当运算符两边的表达式的结果都为true时,整个运算结果才为true,否则,只要有一方为false,则结果为false

      b、第一个条件不成立,后面的条件均不进行判断,返回false

      (3)| 可以作逻辑或运算符,表示逻辑或(or)

      a、当运算符有一边为true时,整个运算结果为true

      b、无论第一个判断条件是否成立,逻辑运算符前后两个条件都会进行判断

      (4)|| 可以作逻辑或运算符,表示逻辑或(or)

      a、当运算符有一边为true时,整个运算结果为true

      b、第一个条件成立,后面的条件均不进行判断,返回true

     示例:

    String s = null;

     1. if((s!=null)&(s.length()>0)){}

     2. if((s!=null)&&(s.length()>0)){}

      3. if((s==null)|(s.length()==0)){}

     4. if((s==null)||(s.length()==0)){}

     上述案例在java运行情况中,1,3均抛出NullPointerException异常。

  二、逻辑运算优先级:

    三种逻辑运算的优先级:

      非运算最高,与运算次之,或运算最低

   如:(注意:关系运算的优先级要高于所有的逻辑运算)

    示例:

    5 >=7 || 4 < 5 &&  !false

    步骤1:计算关系运算:5 >=7,结果:false;

    步骤2:计算关系运算:4 < 5,结果:true;

    步骤3:计算逻辑非运算:!false,结果:true;

    此时: false || true && true

    步骤4:计算逻辑与运算:true && true,结果:true;

    步骤5:计算逻辑或运算:false || true,结果:true;

Java逻辑运算的更多相关文章

  1. JAVA算术运算符、关系运算符和位运算符

    算术运算符 1.java的算数运算符包括+(加).-(减).*(乘)./(除).%(取余),在运算过程中出现的隐式转换原则和C语言一样:2. 高位数据向低位数据转化要使用强制转化: 关系运算符 1.j ...

  2. Spark案例分析

    一.需求:计算网页访问量前三名 import org.apache.spark.rdd.RDD import org.apache.spark.{SparkConf, SparkContext} /* ...

  3. java布尔值进行and和or逻辑运算原理

    先看看如下代码: public class Test { public static void test() { boolean a = true; boolean b = false; if (a ...

  4. Java开发笔记(十五)短路逻辑运算的优势

    前面提到逻辑运算只能操作布尔变量,这其实是不严谨的,因为经过Java编程实现,会发现“&”.“|”.“^”这几个逻辑符号竟然可以对数字进行运算.譬如下面的代码就直接对数字分别开展了“与”.“或 ...

  5. Java运算符使用总结(重点:自增自减、位运算和逻辑运算)

    Java运算符共包括这几种:算术运算符.比较运算符.位运算符.逻辑运算符.赋值运算符和其他运算符.(该图来自网络) 简单的运算符,就不过多介绍使用了,可自行测试.关于赋值运算,可以结合算术运算和位运算 ...

  6. 《深入Java虚拟机学习笔记》- 第13章 逻辑运算

    <深入Java虚拟机学习笔记>- 第13章 浮点运算

  7. 位运算,算术、逻辑运算详解-java篇

    /** * 功能: * 位运算符,原码.反码.补码规则: * 1.二进制的最高位是符号位:0表示正数,1表示负数 * 2.正数的原码.反码.补码都一样 * 3.负数的反码=它的原码符号位不变,其他位取 ...

  8. java代码执行字符串中的逻辑运算方法

    转载:https://www.jb51.net/article/143967.htm 方法一:Java调用js方法执行: /** * * @author: Longjun * @Description ...

  9. Java语言基础---逻辑运算(长路短路运算)

    长路短路运算的区别 长路与运算&:是指在两边都是整数时,是逐位与运算,在两边是关系运算时,是逻辑运算. 短路与运算&&:是指从左至右,遇到false,则停止后面的运算. 长路或 ...

随机推荐

  1. JS截取字符串substr 和 substring方法的区别

    substr 方法 返回一个从指定位置开始的指定长度的子字符串. stringvar.substr(start [, length ]) 参数 stringvar 必选项.要提取子字符串的字符串文字或 ...

  2. webAPI文件上传时文件过大404错误的问题

    背景:最近公司有个需求,外网希望自动保存数据到内网,内网有2台服务器可以相互访问,其中一台服务器外网可以访问,于是想在 这台服务器上放个中转的接口.后来做出来以后测试发现没有问题就放线上去了,不顾发现 ...

  3. Gauss-Laguerre quadrature rule

    % matlab script to derive the 2-point Gauss-Laguerre quadrature rule % and use it on an example % in ...

  4. 使用vue-cli开发过程中如何把jQuery设置为全局

    说明:vue-cli是vue快速构建项目的命令行式开发模式. vue主要针对数据层,更多的操作在数据上,很少在DOM上,偶尔也会需要操作DOM,偶尔也会用到JQ插件,下面简单说下如何在使用vue-cl ...

  5. 【代码笔记】Web-ionic-颜色

    一,效果图. 二,代码. <!DOCTYPE html> <html> <head> <meta charset="utf-8"> ...

  6. 我的Java之旅 第五课 JAVA 语言语法 集合

    JAVA集合只能存放引用类型的的数据,不能存放基本数据类型,int 可以用 Integer代替. 一.集合接口  1.  Iterable<E> 实现这个接口允许对象成为 "fo ...

  7. 惊闻企业Web应用生成平台 活字格 V4.0 免费了,不单可视化设计器免费,服务器也免费!

    官网消息: 针对活字格开发者,新版本完全免费!您可下载活字格 Web 应用生成平台 V4.0 Updated 1,方便的创建各类 Web 应用系统,任意部署,永不过期. 我之前学习过活字格,也曾经向用 ...

  8. 为什么 APM 能提升 IT 团队工作质量?

    “有必要吗?”这是很多 IT 专业人员在尝试向团队内部推荐应用程序性能管理价值时所面临的问题.APM(应用程序性能管理)能为公司节约成本,提高内部工作效率,并真实了解用户对公司的系统和产品是否满意.除 ...

  9. 关于excel中的查找

    弹出查找界面后,点击“选项”按钮 在范围下拉框中选择: 1.工作表:表示在当前表sheet中进行查找 2.工作簿:表示在此excel整个文件中进行查找

  10. C#语言————第三章 使用属性升级MyBank

    ********常见的访问修饰符*********: public :公共的,可以在其他类中访问 private:私有的,只有在本类里可以使用,其他的类无权访问 类的默认访问修饰符 internal( ...