流程控制-布尔逻辑-布尔赋值运算符

    介绍最后一类运算符是把前面的赋值运算符组合起来,非常类似前面的数学赋值运算符(+=,*=等),如下所示:

     &=:var1&=var2;var1的值是var1&var2的结果。

     |=:var1|=var2;var1的值是var1|var2的结果。

     ^=:var1^=var2;var1的值是var1^var2的结果。

    这些运算符处理布尔值和数值的方式与&、|和^相同。

    注意,&=和|=使用&和|,而不是&&和||,与这些较简单的运算符相关联。

    位移运算符也有赋值运算符,如下所示:

     >>=:var1>>=var2;把var1的二进制值向右移动var2位,就得到var1的值。

     <<=:var1<<=var2;把var1的二进制值向左移动var2位,就得到var1的值。

    下面看一个例子,让用户输入一个整数,然后代码使用该整数执行各种布尔运算:

 

using System;
using System.Collections.Generic;
using System.Text;

namespace ConsoleApplication4
{
    
class Program
    {
        
static void Main(string[] args)
        {
            Console.WriteLine(
"请输入一个整数:");
            
int myInt = Convert.ToInt32(Console.ReadLine());//转换为整数
            Console.WriteLine("是否小于10?{0}",myInt < 10);
            Console.WriteLine(
"是否大于等于0且小于等于5?{0}",(0 <= myInt && (myInt <= 5)));
            Console.WriteLine(
"Bitwise and of Intger and 10 = {0}",myInt & 10);
            Console.ReadKey();
        }
    }
}

 

    前两行使用前面介绍的结束,提示并接受一个整数值:

     Console.WriteLine("请输入一个数字:");

     int myInt = Convert.ToInt32(Console.ReadLine());

    使用Convert.ToInt32()从字符串输入中得到一个整数。Convert.ToInt32()是另一个类型转换命令,与前面使用的Convert.ToDouble()命令术语同系列。

    剩下的3行代码对得到的数字进行各种操作,并显示结果。在编写这段代码时,假定用户输入了6:

    第一个输入的操作是myInt<10的结果。如果myInt是6,则它小于10,因此结果为true。如果myInt的值是10或者更大,就会得到false。

    第二个输入设计的计算比较多:(0<=myInt)&&(myInt<=5),其中包含两个比较操作,用于判断myInt的范围。是否大于等于0,且小于等于5.接着对结果进行布尔and操作。输入数字6,则(0<=myInt)返回true,而(myInt<=5)返回false,最终的结果就是(true)&&(false),即false。

posted @ 2009-03-09 23:48    阅读(310)  评论(0编辑  收藏  举报