现在的位置: 首页 > 综合 > 正文

c#枚举(Enum)的用法及遍历方法

2012年01月09日 ⁄ 综合 ⁄ 共 1497字 ⁄ 字号 评论关闭
foreach (string s in Enum.GetNames(typeof(WallKind)))
{
    WinFormTools.MsgBox(s);
}

有人问怎样遍历Revit API中的枚举,遍历枚举是C#的语法功能。

来自MSDN
枚举可用来存储字符串与数字的值对,相当于一个对照表
常用方法:GetName(),GetValue(),Parse()
using System;
 
 public class EnumTest {
     enum Days { Saturday, Sunday, Monday, Tuesday, Wednesday, Thursday, Friday };
     enum BoilingPoints { Celcius = 100, Fahrenheit = 212 };
     [FlagsAttribute]
     enum Colors { Red = 1, Green = 2, Blue = 4, Yellow = 8 };
 
     public static void Main() {
 
         Type weekdays = typeof(Days);
         Type boiling = typeof(BoilingPoints);
 
         Console.WriteLine("The days of the week, and their corresponding values in the Days Enum are:");
 
         foreach ( string s in Enum.GetNames(weekdays) )
             Console.WriteLine( "{0,-11}= {1}", s, Enum.Format( weekdays, Enum.Parse(weekdays, s), "d"));
 
         Console.WriteLine();
         Console.WriteLine("Enums can also be created which have values that represent some meaningful amount.");
         Console.WriteLine("The BoilingPoints Enum defines the following items, and corresponding values:");
 
         foreach ( string s in Enum.GetNames(boiling) )
             Console.WriteLine( "{0,-11}= {1}", s, Enum.Format(boiling, Enum.Parse(boiling, s), "d"));
 
         Colors myColors = Colors.Red | Colors.Blue | Colors.Yellow;
         Console.WriteLine();
         Console.WriteLine("myColors holds a combination of colors. Namely: {0}", myColors);
     }
 }

url:http://greatverve.cnblogs.com/archive/2012/06/06/Enum.html

抱歉!评论已关闭.