zoukankan      html  css  js  c++  java
  • 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值比较之后赋值的时候能够用到

  • 相关阅读:
    DownloadManager
    Android(蓝牙)
    Android下集成Paypal支付
    java 网络(socket)
    java 泛型的几点备忘
    设计模式(模板方法)
    STM32F4_引领入门
    如何查找STM32开发资料
    Keil(MDK-ARM)使用教程(三)_在线调试
    Keil(MDK-ARM)使用教程(二)_菜单
  • 原文地址:https://www.cnblogs.com/morang/p/9746208.html
Copyright © 2011-2022 走看看