谁能帮我解释下.net中 &&,||,&,| 有什么区别 并举例说明 我举一个
如:&&表示两都同时满员,现在我要满足a不等于9999与b!=0.1decimal a = 9999;
decimal b = Convert.ToDecimal(0.1);
if (a != 9999 && b !=Convert.ToDecimal(0.1))
{
Response.Write("aa");
}
else
{
Response.Write("bb");
}这里为什么输出BB 我想用aa则必须用&或者
if (!(a != 9999 && b !=Convert.ToDecimal(0.1)))其他几个麻烦各位大虾解释下。
如:&&表示两都同时满员,现在我要满足a不等于9999与b!=0.1decimal a = 9999;
decimal b = Convert.ToDecimal(0.1);
if (a != 9999 && b !=Convert.ToDecimal(0.1))
{
Response.Write("aa");
}
else
{
Response.Write("bb");
}这里为什么输出BB 我想用aa则必须用&或者
if (!(a != 9999 && b !=Convert.ToDecimal(0.1)))其他几个麻烦各位大虾解释下。
decimal a = 9999;
decimal b = Convert.ToDecimal(50);
if (a != 9999 && b !=Convert.ToDecimal(0.1))
{
Response.Write("aa");
}
else
{
Response.Write("bb");
}
A && B && C
所有条件都为true时结果才为true,否则为false||:逻辑或
A || B || C
所有条件都为false时,结果才为false,否则为ture& :位与
按位(bit)进行与与运算,对应位都为1时,结果位为1,否则为0
9 & 3 = 1
位表示为:
1001 (9)
& 0011 (3)
--------------
= 0001 (1)|: 位或
按位(bit)进行或运算,对应位都为0时,结果位为0,否则为1
9 | 3 = 11
位表示为:
1001 (9)
& 0011 (3)
--------------
= 1011 (11)
条件不成立,所以执行else。&&逻辑与,左右两个表达式都要成立才返回true;
||逻辑或,左右两个表达式只要一个成立就返回true;
&按位与,将两个数的二进制值,按每一位进行与运算,结果仍是一个数,而不是true或false;
|按位或,将两个数的二进制值,按每一位进行或运算,结果仍是一个数,而不是true或false;
比如:1==0 && 2==2这个,1==0不为真,2=2这个就不会在执行判断||若有一条为真就返回true,同&&一样,只要有一条为真,就不再执行后续判断&结果与&&相同,但不同点是所有的判断语句都会被执行
比如:1==0 & 2==2虽然1==0已经不为真,但程序还是会去执行2==2|同&&和|还可以作为操作符
&表示进行 并 操作,|表示进行 或 操作
||就是或者,只要其中一个条件满足!