using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace _8.運(yùn)算符之邏輯運(yùn)算符
{
class Program
{
static void Main(string[] args)
{
// 邏輯運(yùn)算符也稱條件布爾運(yùn)算符
bool b1 = true, b2 = false;
Console.WriteLine("!{0} = {1}", b1, !b1);
Console.WriteLine("!{0} = {1}", b2, !b2);
Console.WriteLine("{0} & {1} = {2}", b1, b2, b1 & b2);
Console.WriteLine("{0} | {1} = {2}", b1, b2, b1 | b2);
Console.WriteLine("{0} ^ {1} = {2}", b1, b2, b1 ^ b2);
// &與&&、|與||,后者具有短路性質(zhì),前者沒有此性質(zhì)。
// 區(qū)別:兩者都是檢查第一個操作的值,再根據(jù)該操作數(shù)的值進(jìn)行操作,可能根本不處理第二個操作數(shù)。
int a = 5, b = 3;
bool result;
result = true & a++ > 6;
Console.WriteLine("a = {0}, result = {1}", a, result);
a = 5;
result = false && a++ > 6;
Console.WriteLine("a = {0}, result = {1}", a, result);
result = false | b++ > 5;
Console.WriteLine("a = {0}, result = {1}", b, result);
b = 3;
result = true || b++ > 5;
Console.WriteLine("a = {0}, result = {1}", b, result);
// 邏輯賦值運(yùn)算符
/**
* &= 等價于 = & ()
* |= 等價于 = | ()
* ^= 等價于 = ^ ()
*/
// !(邏輯非)不存在復(fù)合賦值運(yùn)算符,因為要寫成 != 會造成誤解,認(rèn)為是不等于運(yùn)算符。
// 不存在&&=和||=復(fù)合賦值運(yùn)算符。
Console.ReadKey();
}
}
}
/**
* ! (邏輯非) 如果操作數(shù)為false,結(jié)果為true;如果操作數(shù)為true,結(jié)果為false。
* & (邏輯與) 如果兩個操作數(shù)都是true,結(jié)果為true,否則為false。
* | (邏輯或) 如果兩個操作數(shù)都是false,結(jié)果為false,否則為true。
* ^ (邏輯異或) 如果兩個操作數(shù)中有且僅有一個true,結(jié)果為true,否則為false。
*
* &&(邏輯與) 如果兩個操作數(shù)都是true,結(jié)果為true,否則為false。
* ||(邏輯或) 如果兩個操作數(shù)都是false,結(jié)果為false,否則為true。
*
*/
新聞名稱:八、運(yùn)算符之邏輯運(yùn)算符
分享URL:
http://weahome.cn/article/jjgdoo.html