JAVA中&&和&、||和|(短路与和逻辑与、短路或和逻辑或)的区别
博客分类:
- 面试题目
Java .net Blog 转自 :http://blog.csdn.net/websph/archive/2010/06/13/5669363.aspx
问题一:
JAVA中&&和&、||和|(短路与和逻辑与、短路或和逻辑或)的区别?
Java中逻辑运算 vs 位运算: 首先名称是不同的
&&逻辑与 ||逻辑或 它们都是逻辑运算符 。我们一般都用这种方式,来表达逻辑关系。
& 按位与 | 按位或 它们都是位运算符 。
if(a==1&&b==2) 这是说既要满足a=1也要满足b=2
if(a==1||b==2) 这是说或者满足a=1或者要满足b=2
而a&b或者a|b则是二进制的与或运算
&同为1时为1,否则为0
|同为0时为0,否则为1
3&5则
0011
&0101
0001
等于1
3|5则
0011
|0101
0111
等于7 ============================ python中的逻辑与或非 =================================
Python逻辑运算:and or not
and:当多个条件同时满足时才返回True
age = 45
if age >=40 and age <=55:
print(“这是一个中年人”)
else:
print(“这不是一个中男人”)
or:有多个条件,只要满足其中一个就返回True
math_score = 70
english_score = 30
if math_score > 60 or english_score >30:
print(“成绩合格”)
not:条件取反,真变假,假变真
result = True
if not result:
print(“result is Flase”)
else:
print(“result is True”)