布尔类型与比较运算

布尔类型,又称为逻辑类型,相应的,布尔运算也称为逻辑运算。

bool类型

bool类型只有两种数据,即true值和false值,用来表示“是/否”、“真/假”、“开/关”类的数据,下面的代码演示了bool类型的应用。

C#
using System;
namespace HelloProject
{
    class Program
    {
        static void Main(string[] args)
        {
            bool isLocked = true;
            Console.WriteLine(isLocked);
        }
    }
}

执行代码会显示True值。

布尔运算(逻辑运算)

C#中的布尔运算包括:

  • 与运算,使用&&运算符,需要两个运算数,如x && y,当x和y都是true值时,运算结果为true,否则运算结果是false。与运算支持短路功能,如x && y中,当x为false时,不再计算y的值,而是直接返回false值。
  • 或运算,使用||运算符,需要两个运算数,如x || y,当x和y都为true值或有一个为true值,运算结果为true,当x和y都为false值时,运算结果为false。或运算同样支持短路功能,当x为true值时,不再计算y的值,直接返回true值。
  • 取反运算,使用!运算符,只需要一个运算数据,如!x,true值取反得false,false值取反得true值。

下面的代码演示了这三种布尔运算的应用。

C#
using System;
namespace HelloProject
{
    class Program
    {
        static void Main(string[] args)
        {
            bool x = true;
            bool y = false;
            Console.WriteLine(x && y);
            Console.WriteLine(x || y);
            Console.WriteLine(!x);
        }
    }
}

代码执行结果如下图。

比较运算

比较运算包括:

  • 等于,使用==运算符。请注意==和=运算符,=运算符是赋值运算符。
  • 不等于,使用!=运算符。
  • 大于,使用>运算符。
  • 大于等于,使用>=运算符。
  • 小于,使用<运算符。
  • 小于等于,使用<=运算符。

比较运算需要两个运算数,其运算结果是bool类型,表示比较结果是否成立。下面的代码显示了比较运算符的基本应用。

C#
using System;
namespace HelloProject
{
    class Program
    {
        static void Main(string[] args)
        {
            int x = 10;
            int y = 3;
            Console.WriteLine(" x == y : {0}", x == y);
            Console.WriteLine(" x != y : {0}", x != y);
            Console.WriteLine(" x > y : {0}", x > y);
            Console.WriteLine(" x >= y : {0}", x >= y);
            Console.WriteLine(" x < y : {0}", x < y);
            Console.WriteLine(" x <= y : {0}", x <= y);
        }
    }
}

代码运行结果如下图。

实际应用中,比较运算还可以组合应用,如下面的代码就是判断一个年份是否为闰年。

C#
using System;
namespace HelloProject
{
    class Program
    {
        static void Main(string[] args)
        {
            int year = 2020;
            bool isLeapYear =
                    (year % 400 == 0) || (year % 100 != 0 && year % 4 == 0);
            Console.WriteLine(isLeapYear);
        }
    }
}

执行代码显示True值,大家可以修改year变量的值来观察执行结果。

本例,在判断闰年时有两个条件,有一个成立即可。一是年份可以被400整除,使用“year % 400 == 0”判断,另一个成立的条件是年份不能被100整除的同时可以被4整除,使用“year % 100 != 0 && year % 4 == 0”判断。

下一课,在讨论代码流程控制时,还会看到布尔运算和比较运算的具体应用。

本站内容均为原创作品,转载请注明出处,本页面网址为:http://caohuayu.com/chy/article/Article.aspx?code=cc002007