在代碼中看到的代碼中|=
,有點不太理解故從新學習了下位運算符。c#
[TestMethod] public void TestMethod1() { var a = false; a |= true; Assert.IsTrue(a); var b = true; b |= false; Assert.IsTrue(b); var c = false; var c2 = false; c = c || c2 == false; //等於下面 c2 |= c; Assert.IsTrue(c); Assert.IsTrue(c2); // & 使用測試 var ab = a &= b; Assert.IsTrue(ab); var abc = ab &= !c; Assert.IsFalse(abc); }
|
和||
的區別表達式A(true) | 表達式B :表達式都會執行(| ----- 位運算符)
表達式A(true) || 表達式B :表達式B不會執行(||--短路運算符)單元測試
下面爲測試經過的單元測試學習
var testStr = ""; Func<string, bool> funcTest = (str) => { testStr = str; return false; }; //會執行 funcTest var test = true | funcTest("test1"); //不會會執行 funcTest test = true || funcTest("test2"); Assert.AreEqual(testStr, "test1");
+=,-+,|=,&=,
將計算A和B的運算結果賦值給變量A測試
在一些複製的判斷中能夠簡化判斷語句
若是要將bool值比較以後賦值的時候可以用到code