using System;
enum EmpType : byte {
Manager = 10,
Grunt = 1,
Contractor = 100,
VP = 9
}
class Program {
static void Main(string[] args) {
EmpType fred;
fred = EmpType.VP;
Array obj = Enum.GetValues(typeof(EmpType));
Console.WriteLine("This enum has {0} members:", obj.Length);
}
}
Enum.IsDefined()
using System;
enum EmpType : byte {
Manager = 10,
Grunt = 1,
Contractor = 100,
VP = 9
}
class Program {
static void Main(string[] args) {
EmpType fred;
fred = EmpType.VP;
// Does EmpType have a SaleEmployee value?
if (Enum.IsDefined(typeof(EmpType), "SalesEmployee"))
Console.WriteLine("Yep, we have sales people.");
else
Console.WriteLine("No, we have no profits....");
}
}
Enum data type comparison
using System;
enum EmpType : byte {
Manager = 10,
Grunt = 1,
Contractor = 100,
VP = 9
}
class Program {
static void Main(string[] args) {
EmpType Joe = EmpType.VP;
EmpType Fran = EmpType.Grunt;
if (Joe < Fran) Console.WriteLine("Joe's value is less than Fran's value."); else Console.WriteLine("Fran's value is less than Joe's value."); } } [/csharp]
Enumerations: The System.Enum Type 2
/*
A Programmer's Introduction to C# (Second Edition)
by Eric Gunnerson
Publisher: Apress L.P.
ISBN: 1-893115-62-3
*/
// 20 - EnumerationsThe System.Enum Type
// copyright 2000 Eric Gunnerson
using System;
enum Color
{
red,
green,
yellow
}
public class TheSystemEnumType2
{
public static void Main()
{
Color c = Color.red;
// enum values and names
foreach (int i in Enum.GetValues(c.GetType()))
{
Console.WriteLine("Value: {0} ({1})", i, Enum.GetName(c.GetType(), i));
}
// or just the names
foreach (string s in Enum.GetNames(c.GetType()))
{
Console.WriteLine("Name: {0}", s);
}
// enum value from a string, ignore case
c = (Color) Enum.Parse(typeof(Color), "Red", true);
Console.WriteLine("string value is: {0}", c);
// see if a specific value is a defined enum member
bool defined = Enum.IsDefined(typeof(Color), 5);
Console.WriteLine("5 is a defined value for Color: {0}", defined);
}
}
Enumerations:The System.Enum Type
using System;
enum Color
{
red,
green,
yellow
}
public class TheSystemEnumType1
{
public static void Main()
{
Color c = Color.red;
Console.WriteLine("c is {0}", c);
}
}
Enumerations:Bit Flag Enums 2
enum Values
{
A = 1,
B = 5,
C = 3,
D = 42
}
public class EnumerationsConversions
{
public static void Main()
{
Values v = (Values) 2;
int ival = (int) v;
}
}
Enumerations:Bit Flag Enums 1
using System;
[Flags]
public enum BitValues: uint
{
NoBits = 0,
Bit1 = 0x00000001,
Bit2 = 0x00000002,
Bit3 = 0x00000004,
Bit4 = 0x00000008,
Bit5 = 0x00000010,
AllBits = 0xFFFFFFFF
}
public class BitFlagEnums
{
public static void Member(BitValues value)
{
// do some processing here
}
public static void Main()
{
Member(BitValues.Bit1 | BitValues.Bit2);
}
}

