VSTO开发入门教程
上QQ阅读APP看书,第一时间看更新

2.3 逻辑运算

■2.3.1 布尔型变量

布尔型变量只能等于true或false这两个逻辑值。布尔型变量或常量经常用于if语句中。

    1         public void布尔型变量()
    2         {
    3             bool flag;
    4             flag = (1 > -1);
    5             result = flag.ToString();
    6         }

具有同样功能的VBA代码如下:

    1  Public Sub布尔型变量()
    2     Dim flag As Boolean
    3     flag = (1 > -1)
    4     result = flag
    5  End Sub

■2.3.2 比较运算符

C#中的比较运算符如表2.4所示。

表2.4 比较运算符

注意 C#表示逻辑等于的符号是连续两个等于号。

■2.3.3 多条件的与或非运算

很多情况下,需要多个逻辑表达式通过布尔运算符连接组合使用,才能表述一个实际的逻辑判断,例如判断一个年份是否是闰年。与或非运算符如表2.5所示。

表2.5 与或非运算符

如果要判断一个字符是否是大写英文字母,可以使用如下代码中的逻辑表达式表述:

    1             char var1 = 'W';
    2             if (var1 >= 'A' && var1 <= 'Z')
    3             { MessageBox.Show(var1 + "是一个大写字母"); }
    4             else
    5             { MessageBox.Show(var1 + "不是大写字母"); }

如果要判断一个字符是否是英文字母,需要使用或运算符:

    1             char var1 = 'b';
    2             if (var1 >= 'A' && var1 <= 'Z' || var1 >= 'a' && var1 <= 'z')
    3             { MessageBox.Show(var1 + "是一个英文字母"); }
    4             else
    5             { MessageBox.Show(var1 + "不是英文字母"); }

观察下面的实例代码,思考一下result返回值是什么。

    1         public void多条件的与或非运算()
    2         {
    3             bool flag;
    4             flag = ! (true && false || true);
    5             result = flag.ToString();
    6         }

具有同样功能的VBA代码如下:

    1  Public Sub多条件的与或非运算()
    2     Dim flag As Boolean
    3     flag = Not (True And False Or True)
    4     result = flag
    5  End Sub