Switch based console menu : Switch « Language Basics « C# / C Sharp





Switch based console menu

Switch based console menu
/*
C# Programming Tips & Techniques
by Charles Wright, Kris Jamsa

Publisher: Osborne/McGraw-Hill (December 28, 2001)
ISBN: 0072193794
*/
namespace nsSwitch
{
    using System;
    public class nsSwitch
    {
        static void Main ()
        {
            bool done = false;
            do
            {
                clsAnimal dog = new clsAnimal (1);
                clsAnimal cat = new clsAnimal (2);
                clsAnimal goldfish = new clsAnimal (3);
                clsAnimal aardvark = new clsAnimal (4);
                Console.WriteLine ("Select one of the following:");
                Console.WriteLine ("\t1 -- For dogs");
                Console.WriteLine ("\t2 -- For cats");
                Console.WriteLine ("\t3 -- For goldfish");
                Console.WriteLine ("\t4 -- For aardvarks");
                Console.Write ("Enter Your selection (0 to exit): ");
                string strSelection = Console.ReadLine ();
                int iSel;
                try
                {
                    iSel = int.Parse(strSelection);
                }
                catch (FormatException)
                {
                    Console.WriteLine ("\r\nWhat?\r\n");
                    continue;
                }
                Console.WriteLine ("You selected  " + iSel);
                switch (iSel)
                {
                    case 0:
                        done = true;
                        break;
                    case 1:
                        Console.WriteLine (dog);
                        break;
                    case 2:
                        Console.WriteLine (cat);
                        break;
                    case 3:
                        Console.WriteLine (goldfish);
                        break;
                    case 4:
                        Console.WriteLine (aardvark);
                        break;
                    default:
                        Console.WriteLine ("You selected an invalid number: {0}\r\n", iSel);
                        continue;
                }
                Console.WriteLine ();
            } while (!done);

            Console.WriteLine ("\nGoodbye!");
        }
    }
    class clsAnimal
    {
        public clsAnimal (int Type)
        {
            PetType = Type;
        }
        private int Type;
        public int PetType
        {
            get {return (Type);}
            set {Type = value;}
        }
        public override string ToString()
        {
             switch (PetType)
             {
                 default:
                     return ("Unknown pet");
                 case 1:
                     return ("Your pet type is a dog");
                 case 2:
                     return ("Your pet type is a cat");
                 case 3:
                     return ("Your pet type is a goldfish");
                 case 4:
                     return ("Your pet type is an aardvark");
             }
         }
    }
}


           
       










Related examples in the same category

1.Switch for int type
2.Simulate a conveyor beltSimulate a conveyor belt
3.Demonstrate the switchDemonstrate the switch
4.Use a char to control the switchUse a char to control the switch
5.Empty cases can fall throughEmpty cases can fall through
6.Illustrates the use of the switch statementIllustrates the use of the switch statement
7.Illustrates the use of the switch statement to compare string valuesIllustrates the use of the switch statement to compare string values
8.Switch statement containing a branch with no statements: causes a 'fall-through' to the next branchSwitch statement containing a branch with no statements: causes a 'fall-through' to the next branch
9.Switch ValuesSwitch Values
10.Switch With Default ValuesSwitch With Default Values
11.Switch Values Fall ThroughSwitch Values Fall Through