Csharp/CSharp Tutorial/Data Type/enum switch

Материал из .Net Framework эксперт
Перейти к: навигация, поиск

Enums as parameters

<source lang="csharp">using System; enum EmployeeType : byte {

 Manager = 10,
 Programmer = 1,
 Contractor = 100,
 Developer = 9

} class MainClass {

 public static void myFunction(EmployeeType e)
 {
   switch(e)
   {
     case EmployeeType.Contractor:
       Console.WriteLine("EmployeeType.Contractor");
       break;
     case EmployeeType.Programmer:
       Console.WriteLine("EmployeeType.Programmer");
       break;
     case EmployeeType.Manager:
       Console.WriteLine("EmployeeType.Manager");
       break;
     case EmployeeType.Developer:
       Console.WriteLine("EmployeeType.Developer");
       break;
     default: break;
   }
 }
 public static void Main(string[] args)
 {
   
   EmployeeType fred;
   fred = EmployeeType.Developer;
   myFunction(fred);
 }

}</source>

EmployeeType.Developer

Pass enum to function

<source lang="csharp">using System; public enum Week { Monday, Tuesday, Wednesday, Thursday, Friday, Saturaday,Sunday };

class ConveyorControl {

 public void conveyor(Week com) { 
   switch(com) { 
     case Week.Monday: 
       Console.WriteLine("Starting Monday."); 
       break; 
     case Week.Tuesday: 
       Console.WriteLine("Stopping Tuesday."); 
       break; 
     case Week.Wednesday: 
       Console.WriteLine("Moving Wednesday."); 
       break; 
     case Week.Thursday: 
       Console.WriteLine("Moving Thursday."); 
       break; 
   } 
 } 

}

class MainClass {

 public static void Main() { 
   ConveyorControl c = new ConveyorControl(); 

   c.conveyor(Week.Thursday); 
   c.conveyor(Week.Tuesday); 
   c.conveyor(Week.Wednesday); 
   c.conveyor(Week.Monday); 
    
 } 

}</source>

Moving Thursday.
Stopping Tuesday.
Moving Wednesday.
Starting Monday.

Switch with enum

<source lang="csharp">using System; public enum TimeOfDay {

   Morning = 0,
   Afternoon = 1,
   Evening = 2

} class EnumExample {

   public static void Main() {
       WriteGreeting(TimeOfDay.Morning);
   }
   static void WriteGreeting(TimeOfDay timeOfDay) {
       switch (timeOfDay) {
           case TimeOfDay.Morning:
               Console.WriteLine("Good morning!");
               break;
           case TimeOfDay.Afternoon:
               Console.WriteLine("Good afternoon!");
               break;
           case TimeOfDay.Evening:
               Console.WriteLine("Good evening!");
               break;
           default:
               Console.WriteLine("Hello!");
               break;
       }
   }

}</source>