java之逻辑运算符
&-逻辑与 |-逻辑或 !-逻辑非 &&-短路与 ||-短路或 ^-逻辑异或
| a | b | a&b | a|b | !a | a^b | a&&b | a||b |
| T | T | T | T | N | N | T | T |
| T | N | N | T | N | T | N | T |
| N | T | N | T | T | T | N | T |
| N | N | N | N | T | N | N | N |
逻辑运算符需要注意的几点:
- java中没有连续型布尔表达式,即不可以写成3<x<6,而要写成x>3&x<6;
- “&”和"&&"的区别:
&:左边无论真假,右边都进行运算;
&&:当左边为真时,右边参与运算;当左边为假时,右边不参与运算;public class Test{
public static void main(String[] args) {
int a = 1;
int b = 2;
if (a == b && test()){
System.out.println("world");
}
} public static boolean test() {
System.out.println("hello");
return false;
}
}由于a==b为假,所以右边不参与计算,最后什么都不会输出。
public class Test{
public static void main(String[] args) {
int a = 1;
int b = 2;
if (a < b && test()){
System.out.println("world");
}
} public static boolean test() {
System.out.println("hello");
return false;
}
}由于a<b为真,此时右边参与运算,但是右边结果为false,所以整个判断表达式为false,即不会运行到if里面,所以会输出只会hello。
public class Test{
public static void main(String[] args) {
int a = 1;
int b = 2;
if (a == b && test()){
System.out.println("world");
}
} public static boolean test() {
System.out.println("hello");
return false;
}
}由于a<b为真,此时右边参与运算,右边结果也为true,所以整个判断表达式为true,会运行到if里面,所以会输出只会hello wrold。
- “|”和"||"的区别:
|:左边无论真假,右边都进行运算;
||:当左边为真时,右边参与运算;当左边为假时,右边不参与运算; - "^"异或直接理解就是相同则返回false,不同就返回true;
java之逻辑运算符的更多相关文章
- Java基础-逻辑运算符Logic Operators
Java基础-逻辑运算符Logic Operators 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.逻辑运算符 逻辑运算符是对布尔值进行操作运算的,常见的有: 1>.逻 ...
- java基础--逻辑运算符-- 002
1:int a = 10;int b = 20;boolean flag = (a == b) //falseboolean flag = (a = b) //报错,不兼容的类型 2: &, ...
- JAVA初学者——逻辑运算符
Hello!大家好,我是浩宇大熊猫~ 加油~充实每一天~ java里面的逻辑运算符有与(&).或(|).异或(^).非(!) 其实这些初高中数学课都学过哈,很简单~ public class ...
- Java运算符 逻辑运算符 短路运算符
& 与 两个运算数都为真时结果为真,只要有一个运算数为假结果就为假,否则就为真. true & true = true true & false = false ...
- Java基础——逻辑运算符、位运算符
逻辑运算符.位运算符.三元运算符 逻辑运算符 public class Demon05 { public static void main(String[] args) { ...
- Java script 逻辑运算符
a && b : 将a, b转换为Boolean类型, 再执行逻辑与, true返回b, false返回a 1.只要“&&”前面是false,无论“&& ...
- java代码-----------逻辑运算符、 &&逻辑与 ||或
总结: && :两者均满足.是true ||: 两者中有一个满足就为true,不然就是false package com.sads; public class shou { publi ...
- java代码-----逻辑运算符
总结:运算符不熟悉, package com.aa; public class Ss { public static void main(String[] args) { int i=1,j=10; ...
- java入门学习(十一)逻辑运算符和位运算符
请关注我的博客:www.taomaipin.com 家里有急事 暂停了几天,抱歉,现在呢开始说说java的运算语句和运算符 如果想利用java的运算语句 那么就离不开java的运算符,前面第九章讲了j ...
随机推荐
- Computer: Use the mouse to open the analog keyboard
Xx_Introduction Please protection,respect,love,"China's Internet Security Act"! For learni ...
- SpringBoot中使用Zuul
Zuul提供了服务网关的功能,可以实现负载均衡.反向代理.动态路由.请求转发等功能.Zuul大部分功能是通过过滤器实现的,除了标准的四种过滤器类型,还支持自定义过滤器. 使用@EnableZuulPr ...
- 12c Data guard Switchover Best Practices using SQLPLUS (Doc ID 1578787.1)
12c Data guard Switchover Best Practices using SQLPLUS (Doc ID 1578787.1) APPLIES TO: Oracle Databas ...
- 表单生成器(Form Builder)之伪造表单数据番外篇——指定范围随机时间
为了伪造一些尽量真实的假数据,也真是够费劲的.上一篇笔记记录了一下获取一个随机车辆牌照,这篇笔记记录一下怎么获取一个随机时间.这篇就不说那么多废话了,直接上代码 // 获取指定范围的随机数 var g ...
- pytest系列(一):什么是单元测试界的高富帅?
pytest是python语言中一款强大的单元测试框架,用来管理和组织测试用例,可应用在单元测试.自动化测试工作中. unittest也是python语言中一款单元测试框架,但是功能有限,没有pyte ...
- Vant-Weap通过事件获取值
van-field框的使用 和通过事件获取值 <van-cell-group> <van-field value="{{username}}" label=&qu ...
- 关于String path = request.getContextPath(); String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
关于 String path = request.getContextPath(); String basePath = request.getScheme()+"://"+req ...
- vue定义全局date过滤器(自定义JS文件模块和Moment.js库)
自定义dateFormat.js文件模块 dateFormat.js /** * 时间字符串 转 时间戳 * @param {String} time_str 时间字符串(格式"2014-0 ...
- ros2中创建一个python package
完整的python package的目录结构如下: source /opt/ros/dashing/setup.bash cd ros2_ws/src && ros2 pkg crea ...
- Java - 包装类 常量池
概述: 在Java中存在一些基本数据类型,这些基本数据类型变量,不能像其他对象一样调用方法,属性.... 一些情况下带来一些问题,包装类就是为了解决这个问题而出现 包装类可以使得这些基础数据类型,拥有 ...