java中和有什么区别吗,java中丨与丨丨有什么区别
其实java中和有什么区别吗的问题并不复杂,但是又很多的朋友都不太了解java中|与||有什么区别,因此呢,今天小编就来为大家分享java中和有什么区别吗的一些知识,希望可以帮助到大家,下面我们一起来看看这个问题的分析吧!
Java中“||”与“|”的区别
两者都是或,但是不一样。
不同点:同与操作类似,||表示短路或,当运算符左边的值为true时,右边的表达式不会进行运算。
举个例:
int i=0;
if(3>2||(i++)>1) i=i+1;
System.out.println(i);
这段程序会打印出1,而不是打印出2。
因为在if的条件判断中,程序先判断第一个表达式3>2是否成立,结果3>2为真,那么按照逻辑来
说,无论后面一个表达式(i++)>1是否成立,整个或表达式肯定为真,因此程序就不去执行判断后面
一个表达式即(i++)>1了,所以这里i并没有自增1。然后程序执行到i=i+1,于是i变为1。最后打印
出1。
int i=0;
if(3>2|(i++)>1) i=i+1;
System.out.println(i);
如果换做这样写,那么就是打印出2了,因为无论第一个条件3>2是否为真,程序都会去执行判断第
二个条件表达式,因此i++这个自增是会被执行的,再加上if内的i=i+1,所以最终i=2。
扩展资料|与||的相同点:二者都表示或操作,当运算符两边的操作数任何一边的值为true时,其结果为true,当两边的值都为false时,其结果才为false。
&与&&的异同点。
相同点:二者都表示与操作,当且仅当运算符两边的操作数都为true时,其结果才为true,否则为false。
不同点:在使用&进行运算时,不论左边为true或者false,右边的表达式都会进行运算。如果使用&&进行运算时,当左边为false时,右边的表达式不会进行运算,因此&&被称作短路与。
注意事项:
逻辑运算符一般用于连接boolean类型的表达式或者值。
表达式:就是用运算符把常量或者变量连接起来的符合java语法的式子。
算术表达式:a+ b
比较表达式:a== b(条件表达式)
参考资料
百度百科——Java
Java中,&和&&,|和||有什么区别
&是与,&&是短路与;
&&是左边条件不满足就终止了,不会继续计算右边条件;而&是无论左边是否满足都会继续执行右边。
比如 a&& b,假如计算 a是假,那么就不会继续计算b的真假值了;假如a是真,那么会继续计算b,当b也是真时,a&&b为真。
而 a& b,无论a是真假,都会继续计算b的真假值
|是或,||是短路或;
原理跟上面差不多,a|| b只要 a为真时,那么整个表达式就是真了,不会继续计算b的真假值;
而 a| b,无论a真假,都会继续计算b的值。
一般用&&和||的较多。
另外,&和|还用于位运算中,有兴趣请自行百度
java中|与||有什么区别
&&和||是一种逻辑运算符,&&是逻辑与,当两个数都为真,则结果为真。||是逻辑或,两个数任意一个为真,则结果为真。
举个例子:
1、a&& b
当a、b都为真时,结果为真。有一个为假或者都为假时结果为假。
2、a|| b
当a、b有一个为真时,结果为真。a、b都为假时结果为假。
扩展资料:
在java中还有其他的逻辑符号,比如:!、|、&
“!”是非运算符号,比如a为真,则!a则为假。a如果为假,则!a为真。
而“|”也是逻辑或,“&”也是逻辑与,但是他们与“||”和“&&”有些区别,区别如下:
“&”与“|”无论第一个判断条件是否成立,逻辑运算符前后两个条件都会进行判断。
“&&”与“||”,前者第一个条件不成立,后面的条件均不进行判断,返回false;后者第一个条件成立,后面的条件均不进行判断,返回true。
java中&和&&的区别
(&,|)它们是逻辑操作,(&&,||)它们是条件操作。
&是位运算符,表示按位与运算,&&是逻辑运算符,表示逻辑运算与(and).
||按位或运算符,表示按位或运算,||是逻辑或算符,表示逻辑或运算。
条件操作只能操作布尔型的,而逻辑操作不仅可以操作布尔型,而且可以操作数值型的。
不同点:
对于A&B,不管a是否为假,仍然要判断B。
对于A|B,不管a是否为真,仍然要判断B。
而对于A&&B,A||B在以上情况就不会去判断B了。
帮助别人就是帮助自己,希望大家一块进步。
如果你还想了解更多这方面的信息,记得收藏关注本站。