藍(lán)鷗(www.lanou3g.com)是一家集產(chǎn)、學(xué)、研、創(chuàng)為一體的綜合性移動(dòng)互聯(lián)網(wǎng)研發(fā)培訓(xùn)機(jī)構(gòu),致力于iOS開(kāi)發(fā)、Unity3D游戲開(kāi)發(fā)、Android開(kāi)發(fā)、HTML5前端開(kāi)發(fā)和Web安全攻防等技術(shù)人才的培養(yǎng)。
本節(jié)內(nèi)容 關(guān)系運(yùn)算符 邏輯運(yùn)算符
一、關(guān)系運(yùn)算符
> >= < <= == !=
主要用于比較運(yùn)算,比較的結(jié)果只有true或false兩種情況,結(jié)果用boo類型變量存儲(chǔ)
注意:判斷是否相等,用==(雙等號(hào))
不能用零或非零代表bool值
代碼演示:
usingSystem;
namespaceLesson10
{
classMainClass
{
publicstaticvoidMain(string[]args)
{
inta=4;
intb=9;
//關(guān)系運(yùn)算符包括:>(大于)<(小于)>=(大于等于)<=(小于等于)==(等于,完全相等)!=(不等于)
boolr=a>b;
Console.WriteLine(r);
r=5==5;//r=true;
r=4!=4;//r=true;
//關(guān)系運(yùn)算符高于賦值預(yù)算法,低于一般的算術(shù)運(yùn)算符
Console.WriteLine(r);
//為了避免記錯(cuò)運(yùn)算級(jí)別,可以通過(guò)口號(hào)來(lái)解決問(wèn)題
//r=(5==5);
//r=(4!=4);
}
}
}
二、邏輯運(yùn)算符
邏輯運(yùn)算符在數(shù)學(xué)中也存在或且非,那么具體的C#中邏輯運(yùn)算符怎么用?
1、邏輯或運(yùn)算符——||
usingSystem;
namespaceLesson10
{
classMainClass
{
publicstaticvoidMain(string[]args)
{
inta=4;
intb=9;
//關(guān)系運(yùn)算符包括:>(大于)<(小于)>=(大于等于)<=(小于等于)==(等于,完全相等)!=(不等于)
boolr=a>b;
Console.WriteLine(r);
r=5==5;//r=true;
r=4!=4;//r=true;
//關(guān)系運(yùn)算符高于賦值預(yù)算法,低于一般的算術(shù)運(yùn)算符
Console.WriteLine(r);
//為了避免記錯(cuò)運(yùn)算級(jí)別,可以通過(guò)口號(hào)來(lái)解決問(wèn)題
//r=(5==5);
//r=(4!=4);
//l邏輯運(yùn)算符
//邏輯運(yùn)算符——||
r=true||false;//兩個(gè)操作數(shù)中,只要有一個(gè)是true,那么整個(gè)式子的結(jié)果就是true,否則就是fals
Console.WriteLine(r);
}
}
}
或運(yùn)算符可以連接兩個(gè)表達(dá)式,只要表達(dá)式是bool類型的值就可以
舉例:
r=((5>7)||(4<9));//(5>7)false,(4<9)true,使用括號(hào)括起來(lái)避免運(yùn)算符優(yōu)先級(jí)問(wèn)題(5>7)||(4<9)
Console.WriteLine(r);
2、邏輯與運(yùn)算符——&&(and符號(hào))
usingSystem;
namespaceLesson10
{
classMainClass
{
publicstaticvoidMain(string[]args)
{
inta=4;
intb=9;
//關(guān)系運(yùn)算符包括:>(大于)<(小于)>=(大于等于)<=(小于等于)==(等于,完全相等)!=(不等于)
boolr=a>b;
Console.WriteLine(r);
r=5==5;//r=true;
r=4!=4;//r=true;
//關(guān)系運(yùn)算符高于賦值預(yù)算法,低于一般的算術(shù)運(yùn)算符
Console.WriteLine(r);
//為了避免記錯(cuò)運(yùn)算級(jí)別,可以通過(guò)口號(hào)來(lái)解決問(wèn)題
//r=(5==5);
//r=(4!=4);
//l邏輯運(yùn)算符
//邏輯或運(yùn)算符——||
//r=true||false;//兩個(gè)操作數(shù)中,只要有一個(gè)是true,那么整個(gè)式子的結(jié)果就是true,否則就是fals
r=((5>7)||(4<9));//(5>7)false,(4<9)true,使用括號(hào)括起來(lái)避免運(yùn)算符優(yōu)先級(jí)問(wèn)題(5>7)||(4<9)
Console.WriteLine(r);
//邏輯與運(yùn)算符——&&
//兩個(gè)操作數(shù)中,只要有一個(gè)是false,那么整個(gè)式子的結(jié)果就是false,否則為true
//r=(true&&true);//r=true
r=(4>7)&&(4*2<=6);//r=false
Console.WriteLine(r);
}
}
}
與運(yùn)算符的短路現(xiàn)象:例如:r=(4>7)&&(4*2<=6);計(jì)算機(jī)在計(jì)算4>7的的結(jié)果中,得到了false,接下來(lái)計(jì)算機(jī)就不在進(jìn)行運(yùn)算,直接輸出r=false,計(jì)算機(jī)不會(huì)再計(jì)算4*2<=6了。
舉例:與運(yùn)算符的短路+或運(yùn)算符的短路
intx=4;
r=(false&&x++<10);
Console.WriteLine(r);
Console.WriteLine(x);
inty=4;
r=(true||y++<10);
Console.WriteLine(r);
Console.WriteLine(y);
——監(jiān)測(cè)到無(wú)法訪問(wèn)的表達(dá)式
3、邏輯與運(yùn)算符——!(單目運(yùn)算符)
邏輯非運(yùn)算符——!單目運(yùn)算符
r=!true;//將它所連接的操作數(shù)取反
Console.WriteLine(r);
源代碼
usingSystem;
namespaceLesson10
{
classMainClass
{
publicstaticvoidMain(string[]args)
{
inta=4;
intb=9;
//關(guān)系運(yùn)算符包括:>(大于)<(小于)>=(大于等于)<=(小于等于)==(等于,完全相等)!=(不等于)
boolr=a>b;
Console.WriteLine(r);
r=5==5;//r=true;
r=4!=4;//r=true;
//關(guān)系運(yùn)算符高于賦值預(yù)算法,低于一般的算術(shù)運(yùn)算符
Console.WriteLine(r);
//為了避免記錯(cuò)運(yùn)算級(jí)別,可以通過(guò)口號(hào)來(lái)解決問(wèn)題
//r=(5==5);
//r=(4!=4);
//l邏輯運(yùn)算符
//邏輯或運(yùn)算符——||
//r=true||false;//兩個(gè)操作數(shù)中,只要有一個(gè)是true,那么整個(gè)式子的結(jié)果就是true,否則就是fals
r=((5>7)||(4<9));//(5>7)false,(4<9)true,使用括號(hào)括起來(lái)避免運(yùn)算符優(yōu)先級(jí)問(wèn)題(5>7)||(4<9)
Console.WriteLine(r);
//邏輯與運(yùn)算符——&&
//兩個(gè)操作數(shù)中,只要有一個(gè)是false,那么整個(gè)式子的結(jié)果就是false,否則為true
//r=(true&&true);//r=true
r=(4>7)&&(4*2<=6);//r=false
Console.WriteLine(r);
//邏輯與運(yùn)算符的短路現(xiàn)象
intx=4;
//r=(false&&x++<10);
Console.WriteLine(r);
Console.WriteLine(x);
//邏輯或運(yùn)算符的短路現(xiàn)象
inty=4;
//r=(true||y++<10);
Console.WriteLine(r);
Console.WriteLine(y);
//邏輯非運(yùn)算符——!單目運(yùn)算符
r=!true;//將它所連接的操作數(shù)取反
Console.WriteLine(r);
}
}
}