前言
在项目中的多处使用到了枚举,比如:道具种类(PowerupType) 游戏任务(MissionType),记录一下有关枚举的一些方法
枚举
public enum MissionType
{
Runner1,
Runner2,
Runner3,
Collertioner1,
Collertioner2,
Collertioner3,
Player1,
Player2,
Player3
}
1.遍历枚举
using System; namespace CSharp
{
public class MainClass
{
public static void Main1 (string[] args)
{
//遍历枚举
foreach (var item in Enum.GetValues(typeof( MissionType))) {
Console.WriteLine (item);
}
}
}
}
运行结果
2.获取Index
获取枚举中某项的Index
using System;
namespace CSharp
{
public class EnemTest1
{
public static void GetIndex(MissionType missionType){
Console.WriteLine ( (int)missionType);
} public static void Main (string[] args)
{
GetIndex(MissionType.Collertioner1);
}
}
}
运行结果
3.字符串转枚举
给定一个字符串,返回枚举类型
public static MissionType GetEnemType(string enemName){
//第三个参数指定是否大小写敏感
MissionType type=(MissionType)Enum.Parse(typeof(MissionType),enemName,true);
Console.WriteLine ( type);
return type;
}
public static void Main (string[] args)
{
GetEnemType("Player1");
}
运行结果
4.整形转枚举
给定一个整形,返回字符串类型
//给定一个整形,返回字符串类型
public static string GetTypeStr(int index){
string str=((MissionType)index).ToString();
Console.WriteLine (str);
return str;
}
public static void Main (string[] args)
{ GetTypeStr(1);
}
运行结果
5.枚举转字符串
方法一:Player1.ToString(); 输出:Player1
方法二:s = Enum.GetName(typeof(MissionType), MissionType.Player1); 输出:Player1