C#運算符的簡單使用測試

在代碼中看到的代碼中|=,有點不太理解故從新學習了下位運算符。c#

位運算符在 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和B的運算結果賦值給變量A測試

使用場景

在一些複製的判斷中能夠簡化判斷語句
若是要將bool值比較以後賦值的時候可以用到code

相關文章
相關標籤/搜索