Part 46 - C# Tutorial - Enums Example
The program that we have started in Part 45 is now rewritten using Gender enum, which makes it more readable and maintainable.
If you have not watched video on problems of not using enums, please click here to watch it now
using System;
public class Enums
{
public static void Main()
{
Customer[] customers = new Customer[3];
customers[0] = new Customer()
{
Name = "Mark",
Gender = Gender.Male
};
customers[1] = new Customer()
{
Name = "Mary",
Gender = Gender.Female
};
customers[2] = new Customer()
{
Name = "Sam",
Gender = Gender.Unknown
};
foreach (Customer customer in customers)
{
Console.WriteLine("Name = {0} && Gender = {1}", customer.Name, GetGender(customer.Gender));
}
}
public static string GetGender(Gender gender)
{
// The swicth here is now more readable and maintainable because
// of replacing the integral numbers with Gender enum
switch (gender)
{
case Gender.Unknown:
return "Unknown";
case Gender.Male:
return "Male";
case Gender.Female:
return "Female";
default:
return "Invalid Data for Gender";
}
}
}
public enum Gender
{
Unknown = 0,
Male = 1,
Female = 2
}
public class Customer
{
public string Name { get; set; }
public Gender Gender { get; set; }
}
Best place to learn C# basic so far.
ReplyDeleteDear Sir
ReplyDeleteWhy we are use this function(GetGender) because already
we use (enum Gender),the program working without this function
we need remove (GetGender(customer.Gender)) and use only
(customer.Gender))
Thanks
Sir.. Should we still require the method GetGender in this example ? Can't we pass Customer.Gender directly in the Console.writeLine statement ?
ReplyDelete