Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Industrial programming >> Langue C

Instruction de commutateur C #

Instruction de commutateur C#

Dans cet article, nous allons découvrir l'instruction switch en C# et comment les utiliser avec des exemples.

L'instruction switch peut être utilisée pour remplacer l'instruction if...else if en C#. L'avantage d'utiliser switch over if...else if est que les codes seront beaucoup plus propres et lisibles avec switch.

La syntaxe de l'instruction switch est :

switch (variable/expression)
{
    case value1:
        // Statements executed if expression(or variable) = value1
        break;
    case value2:
        // Statements executed if expression(or variable) = value1
        break;
    ... ... ... 
    ... ... ... 
    default:
        // Statements executed if no case matches
}

L'instruction switch évalue l'expression (ou variable ) et comparez sa valeur avec les valeurs (ou expression) de chaque cas (value1 , valeur2 , …). Lorsqu'il trouve la valeur correspondante, les instructions à l'intérieur de ce cas sont exécutées.

Mais, si aucun des cas ci-dessus ne correspond à l'expression, les instructions à l'intérieur de default bloc est exécuté. L'instruction par défaut à la fin de switch est similaire au bloc else dans l'instruction if else.

Cependant, un problème avec l'instruction switch est que lorsque la valeur correspondante est trouvée, elle exécute toutes les instructions qui la suivent jusqu'à la fin du bloc switch.

Pour éviter cela, nous utilisons break déclaration à la fin de chaque cas. L'instruction break empêche le programme d'exécuter des instructions non correspondantes en mettant fin à l'exécution de l'instruction switch.

Pour en savoir plus sur l'instruction break, consultez Instruction break C# .

Exemple 1 :Instruction de commutateur C#

using System;
 
namespace Conditional
{
    class SwitchCase
    {
        public static void Main(string[] args)
        {
            char ch;
            Console.WriteLine("Enter an alphabet");
            ch = Convert.ToChar(Console.ReadLine());
 
            switch(Char.ToLower(ch))
            {
                case 'a':
                    Console.WriteLine("Vowel");
                    break;
                case 'e':
                    Console.WriteLine("Vowel");
                    break;
                case 'i':
                    Console.WriteLine("Vowel");
                    break;
                case 'o':
                    Console.WriteLine("Vowel");
                    break;
                case 'u':
                    Console.WriteLine("Vowel");
                    break;
                default:
                    Console.WriteLine("Not a vowel");
                    break;
            }
        }
    }
}

Lorsque nous exécutons le programme, la sortie sera :

Enter an alphabet
X
Not a vowel

Dans cet exemple, l'utilisateur est invité à entrer un alphabet. L'alphabet est converti en minuscules en utilisant ToLower() méthode si elle est en majuscule.

Ensuite, l'instruction switch vérifie si l'alphabet entré par l'utilisateur est l'un des a, e, i, o or u .

Si l'un des cas correspond, Vowel est imprimé sinon le contrôle va au bloc par défaut et Not a vowel est imprimé en sortie.

Étant donné que la sortie pour toutes les voyelles est la même, nous pouvons joindre les cas comme :

Exemple 2 :Instruction switch C# avec cas groupés

using System;
 
namespace Conditional
{
    class SwitchCase
    {
        public static void Main(string[] args)
        {
            char ch;
            Console.WriteLine("Enter an alphabet");
            ch = Convert.ToChar(Console.ReadLine());
 
            switch(Char.ToLower(ch))
            {
                case 'a':
                case 'e':
                case 'i':
                case 'o':
                case 'u':
                    Console.WriteLine("Vowel");
                    break;
                default:
                    Console.WriteLine("Not a vowel");
                    break;
            }
        }
    }
}

La sortie des deux programmes est la même. Dans le programme ci-dessus, toutes les voyelles impriment la sortie Vowel et rompt avec l'instruction switch.

Bien que l'instruction switch rende le code plus propre que l'instruction if...else if, switch est restreint à fonctionner avec des types de données limités. L'instruction switch en C# ne fonctionne qu'avec :

  • Types de données primitifs :bool, char et type intégral
  • Types énumérés (Enum)
  • Classe de chaîne
  • Types Nullable des types de données ci-dessus

Exemple 3 :programme de calcul simple utilisant l'instruction C# switch

using System;
 
namespace Conditional
{
    class SwitchCase
    {
        public static void Main(string[] args)
        {
            char op;
            double first, second, result;
             
            Console.Write("Enter first number: ");
            first = Convert.ToDouble(Console.ReadLine());
            Console.Write("Enter second number: ");
            second = Convert.ToDouble(Console.ReadLine());
            Console.Write("Enter operator (+, -, *, /): ");
            op = (char)Console.Read();
 
            switch(op)
            {
                case '+':
                    result = first + second;
                    Console.WriteLine("{0} + {1} = {2}", first, second, result);
                    break;
                 
                case '-':
                    result = first - second;
                    Console.WriteLine("{0} - {1} = {2}", first, second, result);
                    break;
                 
                case '*':
                    result = first * second;
                    Console.WriteLine("{0} * {1} = {2}", first, second, result);
                    break;
                 
                case '/':
                    result = first / second;
                    Console.WriteLine("{0} / {1} = {2}", first, second, result);
                    break;
 
                default:
                    Console.WriteLine("Invalid Operator");
                    break;
                     
            }
        }
    }
}

Lorsque nous exécutons le programme, la sortie sera :

Enter first number: -13.11
Enter second number: 2.41
Enter operator (+, -, *, /): *
-13.11 * 2.41 = -31.5951

Le programme ci-dessus prend deux opérandes et un opérateur comme entrée de l'utilisateur et effectue l'opération en fonction de l'opérateur.

Les entrées sont prises de l'utilisateur en utilisant le ReadLine() et Read() méthode. Pour en savoir plus, consultez Entrée et sortie de base C#.

Le programme utilise l'instruction switch case pour la prise de décision. Alternativement, nous pouvons utiliser if-else if ladder pour effectuer la même opération.


Langue C

  1. Circuit avec interrupteur
  2. diode de commutation
  3. Types de commutateur
  4. Contacter « Bounce »
  5. Instruction de rupture C#
  6. Instruction continue C #
  7. Instruction de passe Python
  8. Instruction C++ Switch Case avec EXAMPLE
  9. C - Syntaxe de base