Java基础-逻辑运算符Logic Operators
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的更多相关文章
- Java基础-赋值运算符Assignment Operators与条件运算符Condition Operators
Java基础-赋值运算符Assignment Operators与条件运算符Condition Operators 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.赋值运算符 表 ...
- java基础--逻辑运算符-- 002
1:int a = 10;int b = 20;boolean flag = (a == b) //falseboolean flag = (a = b) //报错,不兼容的类型 2: &, ...
- Java基础——逻辑运算符、位运算符
逻辑运算符.位运算符.三元运算符 逻辑运算符 public class Demon05 { public static void main(String[] args) { ...
- java基础语法2-运算符与流程控制
关键字-标识符-常量和变量-运算符-流程控制-方法-数组 5 运算符 算术运算符Arithmetic Operators 赋值运算符Assignment Operators 比较运算符Compare ...
- Java基础-算术运算符(Arithmetic Operators)
Java基础-算术运算符(Arithmetic Operators) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. Java程序通过运算符实现对数据的处理,Java中的运算符包括: ...
- Java基础-比较运算符Compare Operators
Java基础-比较运算符Compare Operators 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.关系运算符 关系运算符包括: 1>.大于(>) 2> ...
- Java基础-位运算符Bitwise Operators
Java基础-位运算符Bitwise Operators 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.位运算特点 位运算符分为按位与(&),按位或(|),按位异或(^ ...
- 逻辑运算符,if、swtch语句(java基础知识三)
1.逻辑运算符的基本用法 * A:逻辑运算符有哪些 &(逻辑与) |(逻辑或) !(逻辑非) ^(逻辑异或) &&(短路与) ||(短路或) * 注意事项: * a:逻辑运算符 ...
- 03 java语言基础逻辑运算符
03.01_Java语言基础(逻辑运算符的基本用法) A:逻辑运算符有哪些 &,|,^,! &&,|| B:案例演示 逻辑运算符的基本用法 注意事项: a:逻辑运算符一般用于连 ...
随机推荐
- libgdx自制简易Flappy Bird
Flappy Bird,好吧,无需多说.今天年初不知咋的,一下子就火了,而且直接跃居榜首,在ios和android平台都是如此,实在难以理解.传说其作者每天收入能达到5w刀,着实碉堡了... 好吧,咱 ...
- [BZOJ4722]由乃[鸽巢原理+bitset+倍增]
题意 给定长为 \(n\) 序列 \(a\) ,要求支持两种操作: \(1.\) 询问在一个区间 \([l,r]\) 中,是否能够选出两个交集为空的集合 $ \rm X ,Y$, 使得 \(\sum_ ...
- 浅谈android Service和BroadCastReceiver
1.题记 Android中的服务和windows中的服务是类似的东西,服务一般没有用户操作界面,它运行于系统中不容易被用户发觉,可以使用它开发如监控之类的程序. 广播接收者(BroadcastRece ...
- 接口自动化学习--testNG
一个月一更的节奏~ testNg是一个开源的自动化测试框架..具体那些什么特点的就不想打了- -,贴张图(虽然也看不懂): 学习网站:https://www.yiibai.com/testng 一样是 ...
- 接口自动化测试框架-AIM
最近在做公司项目的自动化接口测试,在现有几个小框架的基础上,反复研究和实践,搭建了新的测试框架.利用业余时间,把框架总结了下来. AIM框架介绍 AIM,是Automatic Interface Mo ...
- 【阿里巴巴】CBU技术部招聘
如果你偏爱技术挑战,希望成就不一样的自己,欢迎投递简历至 yangyang.xiayy@alibaba-inc.com [业务简介] B2B内贸www.1688.com:1688.com是最大的内贸B ...
- @JsonFormat时间格式化注解使用
@JsonFormat注解是一个时间格式化注解,比如我们存储在mysql中的数据是date类型的,当我们读取出来封装在实体类中的时候,就会变成英文时间格式,而不是yyyy-MM-dd HH:mm:ss ...
- 对软件工程Alpha迭代的反思与总结
对软件工程Alpha迭代的反思与总结 本次软件工程的A轮迭代,我们组出了不小的问题.作为一个团队来说,我们的队伍出现了很严重的状况,严重到让老师觉得我们一度失控.于是我撰写此文,借以反思.总结和提高. ...
- 《Linux内核设计与实现》Chapter 18 读书笔记
<Linux内核设计与实现>Chapter 18 读书笔记 一.准备开始 一个bug 一个藏匿bug的内核版本 知道这个bug最早出现在哪个内核版本中. 相关内核代码的知识和运气 想要成功 ...
- 冲刺Two之站立会议1
今天我们开始了第二个冲刺期的工作,大家重新讨论了下个阶段的工作内容,由于上次演示我们主要只是实现了摄像头开启.通信和语音通话的功能,而且各部分还有待完善.所以我们决定了之后的主要工作的内容:之前服务器 ...