[英]OR, AND Operator
新手問題。 如何計算公式A f B的值,其中f - 二元函數OR或AND?
條件運算符&&和||之間存在區別 和布爾運算符&和|。 主要是它的優先級(運算符首先被評估)以及&&和||的區別 正在'逃避'。 這意味着這是一個序列,如......
cond1 && cond2 && cond3
如果cond1為false,則cond2或cond3都不會被評估,因為代碼正確地假定無論它們的值是什么,表達式都不能為真。 同樣...
cond1 || cond2 || cond3
如果cond1為true,則cond2或cond3都不會被計算,因為表達式必須為true,無論它們的值是什么。
按位對應,&和| 沒有逃脫。
希望有所幫助。
邏輯OR是||
,邏輯AND是&&
。 如果您需要否定否,請在表達式前加上!
。
例:
X = (A && B) || C || !D;
當A和B為真或者C為真或者D不為真(即假)時,X將為真。
如果你想按位AND / OR / NOT,你會使用&
, |
和~
。 但是如果你正在處理布爾/真值,你不想使用它們。 它們不提供短路評估,例如由於按位操作的方式。
if(A == "haha" && B == "hihi") {
//hahahihi?
}
if(A == "haha" || B != "hihi") {
//hahahihi!?
}
我不確定這是否能回答你的問題,但例如:
if (A || B)
{
Console.WriteLine("Or");
}
if (A && B)
{
Console.WriteLine("And");
}
使用'&&'表示AND並使用'||' 對於OR,例如:
bool A;
bool B;
bool resultOfAnd = A && B; // Returns the result of an AND
bool resultOfOr = A || B; // Returns the result of an OR
如果您感興趣的是按位操作,請查看此處的簡短教程: http : //weblogs.asp.net/alessandro/archive/2007/10/02/bitwise-operators-in-c-or-xor-and-amp- amp-not.aspx .bitwise操作執行與上面例示的操作相同的操作,它們只使用二進制表示(該操作適用於值的每個單獨位)
如果您想要邏輯操作答案已經給出。
&&它的操作只有在兩個操作數都為真時才返回true
bool and(bool b1, bool b2)]
{
if(b1==true)
{
if(b2==true)
return true;
}
return false;
}
|| 如果一個或兩個操作數都是真的,那么它的操作返回true
bool or(bool b1,bool b2)
{
if(b1==true)
return true;
if(b2==true)
return true;
return false;
}
如果你寫
y=45&&34//45 binary 101101, 35 binary 100010
結果你有
y=32// in binary 100000
因此,我在上面寫的內容是針對每對位使用的
上面的許多答案,我會嘗試不同的方式:
如果您正在尋找按位運算,請僅使用以下標記之一:
3&1 // == 1 - 和4 | 1 // == 5 - 或
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.