枚举是一组命名整型常量。枚举类型是使用 enum 关键字声明的。

C# 枚举是值类型。换句话说,枚举包含自己的值,且不能继承或传递继承

声明enum变量

声明枚举的一般语法:

我们用不同年龄段来创建一个枚举类型:

// 定义人的年龄阶段枚举  
using System;

public enum AgeStage
{
    // 注意:这里我们仅为示例而定义了大致的年龄范围  
    // 在实际应用中,可能需要更复杂的逻辑来确定年龄阶段  
    /*枚举(Enum)的成员默认情况下是隐式地赋予整数值的,从0开始递增。
     * 因此,当你为枚举成员显式地指定了一个整数值,
     * 并且随后删除了这个值(比如从Child = 0改为Child),
     * 编译器会自动将这个成员(即Child)的值设为紧随前一个成员的值之后的整数值。
     * 但是,如果你是在枚举的第一个成员上这么做(比如Child是第一个成员),
     * 并且删除了显式赋的值,那么它的值将默认为0。*/
    Child = 0,  // 假设0-12岁为儿童  
    Teenager = 1, // 假设13-19岁为少年  
    青年 = 2, // 假设20-39岁为青年  
    MiddleAged = 3, // 假设40-59岁为中年  
    Senior = 4 // 假设60岁及以上为老年  
}

// 示例:如何使用AgeStage枚举  
class Program
{
    static void Main(string[] args)
    {
        // 假设我们知道某个人的年龄  
        int age = 36;

        // 根据年龄判断并输出对应的年龄阶段  
        // 注意:这里为了简化,我们使用了简单的条件判断,而非枚举直接映射  
        // 因为枚举通常不直接存储额外的数据(如年龄范围)  
        AgeStage ageStage;
        if (age <= 12)
        {
            ageStage = AgeStage.Child;
        }
        else if (age <= 19)
        {
            ageStage = AgeStage.Teenager;
        }
        else if (age <= 39)
        {
            ageStage = AgeStage.青年;
        }
        else if (age <= 59)
        {
            ageStage = AgeStage.MiddleAged;
        }
        else
        {
            ageStage = AgeStage.Senior;
        }

        // 输出年龄阶段  
        Console.WriteLine($"年龄: {age}, 年龄段: {ageStage}");
        Console.ReadKey();
    }
}

 

using System;

namespace day01
{

    class Program
    {
        enum Day { Sun, Mon, Tue, Wed, Thu, Fri, Sat };
        static void Main(string[] args)
        {
            int x = (int)Day.Sun;
            int y = (int)Day.Fri;
            Console.WriteLine("Sun={0}\nFri={1}", x, y);
            Console.ReadKey();

        }
    }
}

点赞(0) 打赏

评论列表 共有 0 条评论

暂无评论

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部