Saturday 4 August 2018

c# - How to enumerate an enum



How can you enumerate an enum in C#?



E.g. the following code does not compile:




public enum Suit
{
Spades,
Hearts,
Clubs,
Diamonds
}

public void EnumerateAllSuitsDemoMethod()

{
foreach (Suit suit in Suit)
{
DoSomething(suit);
}
}


And it gives the following compile-time error:





'Suit' is a 'type' but is used like a 'variable'




It fails on the Suit keyword, the second one.


Answer



foreach (Suit suit in (Suit[]) Enum.GetValues(typeof(Suit)))
{
}



Note: The cast to (Suit[]) is not strictly necessary, but it does make the code 0.5 ns faster.


No comments:

Post a Comment

php - file_get_contents shows unexpected output while reading a file

I want to output an inline jpg image as a base64 encoded string, however when I do this : $contents = file_get_contents($filename); print &q...