Java基础-逻辑运算符Logic Operators

                                作者:尹正杰

版权声明:原创作品,谢绝转载!否则将追究法律责任。

一.逻辑运算符

  逻辑运算符是对布尔值进行操作运算的,常见的有:

    1>.逻辑与(&);

    2>.逻辑或(|);

    3>.逻辑异或(^);

    4>.逻辑非(!);

    5>.短路与(&&);

    6>.短路或(||);

  总结规律如下:

    1>."&":只有两个操作数都是true,结果才是true,其余都是false;
    2>."|":只要有一个操作数是true,结果就是true,其余都是false;
    3>."!":取反,true变false,false变true;
    4>.单操作数的只有一个;
    5>.异或的含义:求异,只有两个操作数不同,整个表达式才为true;

二.案例展示

1>.逻辑运算符的操作数与布尔值

 /*
@author :yinzhengjie
Blog:http://www.cnblogs.com/yinzhengjie/tag/Java%E5%9F%BA%E7%A1%80/
EMAIL:y1053419035@qq.com
*/ public class LogicDome{
public static void main(String[] args){ //逻辑运算符的操作数与布尔值
System.out.println( true & true ); //true
System.out.println( false | true ); //true
System.out.println( true ^ false ); //true
System.out.println( true ^ true ); //false
System.out.println( !true ); //false
System.out.println( !false ); //true }
}

2>.短路与&&,操作结果与逻辑&一样(推荐使用)

 /*
@author :yinzhengjie
Blog:http://www.cnblogs.com/yinzhengjie/tag/Java%E5%9F%BA%E7%A1%80/
EMAIL:y1053419035@qq.com
*/ public class LogicDome2{
public static void main(String[] args){ //短路与&&,操作结果与逻辑&一样
int num = 2018;
System.out.println( (num < 0) & ( ++num > 0) ); //false
System.out.println( num ); //2019 //短路与&&,如果左侧表达式为false,不计算右侧表达式的值了
num = 18;
System.out.println( (num < 0) && ( ++num > 0) ); //false
System.out.println( num ); //
}
}

3>.短路或||,如果左侧为true,不计算右侧表达式的值了(推荐使用)

 /*
@author :yinzhengjie
Blog:http://www.cnblogs.com/yinzhengjie/tag/Java%E5%9F%BA%E7%A1%80/
EMAIL:y1053419035@qq.com
*/ public class LogicDome3{
public static void main(String[] args){ //短路与||,如果左侧为true,不计算右侧表达式的值了
int num = 2018;
System.out.println( (num > 0) || ( ++num > 0) ); //false
System.out.println( num ); // }
}

4>.逻辑运算符经常用于链接多个布尔表达式

 /*
@author :yinzhengjie
Blog:http://www.cnblogs.com/yinzhengjie/tag/Java%E5%9F%BA%E7%A1%80/
EMAIL:y1053419035@qq.com
*/ public class LogicDome4{
public static void main(String[] args){ //逻辑运算符经常用于链接多个布尔表达式
int year = 2018; /**
判断某一年是否为闰年:
能被4整除但是不能被100整除 || 直接能被400整除
(能被4整除 && 不能被100整除) || 直接能被400整除
(year%4==0 && year%100!=0) || year%400==0;
*/ boolean isPrime = (year%4==0 && year%100!=0) || year%400==0; //false System.out.println( isPrime); }
}

Java基础-逻辑运算符Logic Operators的更多相关文章

  1. Java基础-赋值运算符Assignment Operators与条件运算符Condition Operators

    Java基础-赋值运算符Assignment Operators与条件运算符Condition Operators 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.赋值运算符 表 ...

  2. java基础--逻辑运算符-- 002

    1:int a = 10;int b = 20;boolean flag = (a == b) //falseboolean flag = (a = b) //报错,不兼容的类型 2: &, ...

  3. Java基础——逻辑运算符、位运算符

    逻辑运算符.位运算符.三元运算符 逻辑运算符  public class Demon05 {     public static void main(String[] args) {          ...

  4. java基础语法2-运算符与流程控制

    关键字-标识符-常量和变量-运算符-流程控制-方法-数组 5 运算符 算术运算符Arithmetic Operators 赋值运算符Assignment Operators 比较运算符Compare ...

  5. Java基础-算术运算符(Arithmetic Operators)

    Java基础-算术运算符(Arithmetic Operators) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. Java程序通过运算符实现对数据的处理,Java中的运算符包括: ...

  6. Java基础-比较运算符Compare Operators

    Java基础-比较运算符Compare Operators 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.关系运算符 关系运算符包括: 1>.大于(>) 2> ...

  7. Java基础-位运算符Bitwise Operators

    Java基础-位运算符Bitwise Operators 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.位运算特点 位运算符分为按位与(&),按位或(|),按位异或(^ ...

  8. 逻辑运算符,if、swtch语句(java基础知识三)

    1.逻辑运算符的基本用法 * A:逻辑运算符有哪些 &(逻辑与) |(逻辑或) !(逻辑非) ^(逻辑异或) &&(短路与) ||(短路或) * 注意事项: * a:逻辑运算符 ...

  9. 03 java语言基础逻辑运算符

    03.01_Java语言基础(逻辑运算符的基本用法) A:逻辑运算符有哪些 &,|,^,! &&,|| B:案例演示 逻辑运算符的基本用法 注意事项: a:逻辑运算符一般用于连 ...

随机推荐

  1. TMS320VC5509驱动74HC595芯片

    1. 5509A有3个MCBSP模块,其中模块MCBSP可以配置成SPI模式,不过实际使用的时候需要把CLKX1和CLKR1接在一起,暂时没搞明白原因 MCBSP有6个引脚,DR0 RX0 作为数据的 ...

  2. HTML基础之HTML标签

    前端的三把利器 HTML:赤裸的一个人 CSS:华丽的衣服 JS/JavaScript:赋予这个人的行为,也就是动起来 HTML(超文本标记语言) html代码实际上就是一套能够被浏览器所识别的规则代 ...

  3. libgdx学习记录25——Rectangle与Circle是否重叠

    Rect与Circle重叠有三种情况: 1. Rect至少有一个角在Circle里面 2. Circle与Rect的左边或右边相交,或者Circle在Rect内 3. Circle与Rect的顶边或底 ...

  4. zabbix3.4 实现sendEmail邮件报警

    zabbix3.4实现sendEmail邮件报警 转发:https://www.cnblogs.com/pythonal/p/7813948.html sendEmail是一个轻量级,命令行的SMTP ...

  5. 使用Memcached提高.NET应用程序的性能(转)

    标签:分布式缓存 .NET Memcached Performance 性能 原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://zh ...

  6. unity2D限制位置的背景移动补偿效果

    有时候我们想要背景可以跟随相机移动补偿,但是又不想该背景物体离原来的位置太远,比如我们想要一棵树在一个房子的后面,然后使用相机补偿使其跟随移动,达到3D错觉效果,但是我们又不想该物体偏离房屋太远.假设 ...

  7. C. Classy Numbers

    链接 [http://codeforces.com/contest/1036/problem/C] 题意 给你l,r,让你找在这个闭区间内位数不为0不超过3的个数,1<=l,r<=1e18 ...

  8. Final阶段基于spec评论作品

    组名:杨老师粉丝群 组长:乔静玉 组员:吴奕瑶  刘佳瑞  公冶令鑫  杨磊  刘欣  张宇  卢帝同 一.测试目标:拉格朗日2018——飞词 1.开始界面,只有一个开始游戏按钮,简约且醒目     ...

  9. M1事后分析报告--We have power to change the origin state

    M1事后分析报告 设计与实现 我们发的软件解决的问题?是否满足后面小组的要求?是否能够完全拟合前期目标? 答: 前期我们的软件完成量并不是特别让人满意,我们组在完成这些任务量之后,发现有很多地方是在做 ...

  10. git hub 使用心得

    git中重要的概念: 工作目录(working directory):在工作目录中修改文件,修改后的文件状态是modified,新添加的文件是untracked,通过git add命令将文件保存到st ...