The Enum you show is equivalent to:
public enum Gender
{
Male,
Female
}
Here's an example of a method that will return either Gender.Male or Gender.Female at random:
Random rand = new Random();
private Gender randomGender()
{
return (rand.Next(2) == 0) ? Gender.Male : Gender.Female;
}
This uses the overload of the .Next method of the Random Class that takes an integer and returns an integer value that is positive and less than the supplied integer parameter.
If you really need to get an integer back:
private int randomGenderAsInt()
{
return Convert.ToInt32((rand.Next(2) == 0) ? Gender.Male : Gender.Female);
}
But, consider the required conversion to integer may not be necessary; remember than an Enum can be used directly in such constructs as a switch/case statement:
private void GenderDemo(int howMany)
{
for (int i = 0; i < howMany; i++)
{
Gender theGender = randomGender();
switch (theGender)
{
case Gender.Male:
break;
case Gender.Female:
break;
}
}
}
One of the many useful purposes of Enums is to make code more readable, and easier to maintains, and extend.