C#程序设计经典300例
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

实例006 判断矩形是否为正方形——结构体和布尔型

【实例描述】

本实例主要利用自定义结构体来描述矩形,然后为结构体成员赋值,并利用结构体提供的函数判断矩形是否为正方形,最后在控制台输出判断结果,效果如图2-3所示。

图2-3 判断矩形是否为正方形

【实现过程】

(1)创建一个名为Struct的控制台应用程序,定义一个名为Rectangle的结构体用来描述矩形,代码如下:

    struct Rectangle
    {
        public int Width;                                    //矩形宽度
        public int Height;                                   //矩形高度
        public bool IsSquare() { return Width == Height; }      //判断矩形是否为正方形
    }

(2)在main函数中为矩形成员赋值,并在控制台输出矩形是否为正方形,代码如下:

    Rectangle rect = new Rectangle();                       //创建一个矩形对象
    rect.Width = 100;                                       //设置矩形宽度为100
    rect.Height = 100;                                      //设置矩形高度为100
    Console.WriteLine("矩形宽:{0} 矩形高:{1}", rect.Width, rect.Height);
                                                            //输出矩形宽度和高度
    bool isSquare = rect.IsSquare();                        //获取矩形是否为正方形
    Console.WriteLine("矩形是否为正方形:{0}", isSquare);       //输出矩形是否为正方形

【代码解析】

实例代码中首先定义了一个结构体,结构体属于用户自定义值类型,使用 struct 关键字修饰,后面跟结构体名称。可以在结构体中声明构造函数、常数、变量、属性、方法、索引以及嵌套类型。

说明:结构体主要用于创建小型对象,因为在C#中值类型是存储在线程堆栈中的,而线程堆栈的默认大小是1MB。

实例代码中还用到了布尔类型类表示矩形是否为正方形,布尔类型只取true或false两个值,表示真或者假,布尔类型主要用于逻辑判断。