Les opérateurs utilisés pour la prise de décision qui remplacent les instructions conditionnelles if et else sont appelés un opérateur ternaire en c#, qui est constitué de trois arguments parmi lesquels le premier argument est utilisé pour la comparaison et si le résultat de cette comparaison est vrai, le le deuxième argument est renvoyé, si le résultat de la comparaison est faux, le troisième argument est renvoyé et cet opérateur peut être considéré comme une manière optimisée d'utiliser l'instruction if-else.
Syntaxe :
Boolean Expression ? First statement : Second statement
La syntaxe ci-dessus représente l'opérateur ternaire. Il se compose de trois parties. La première partie de la syntaxe est avant ?. Il renvoie une valeur booléenne vraie ou fausse car il s'agit d'une expression conditionnelle. La deuxième partie de la syntaxe est avant « ? » et après « : », qui est exécutée si le résultat de l’expression conditionnelle de la première partie est vrai. La troisième partie de la syntaxe après l'instruction ':' est exécutée si le résultat de l'expression conditionnelle qui est la première partie est faux.
Voici les différents exemples d'opérateurs ternaires.
Considérez le programme C# ci-dessous pour comparer deux valeurs à l'aide de l'instruction if-else.
Code :
using System; namespace Project { class MainClass { public static void Main(string[] args) { int a = 30; int b = 40; if (a < b) { Console.WriteLine("a's value is less than b"); } else { Console.WriteLine("b's value is less than a"); } } } }
Sortie :
Dans le programme ci-dessus, deux variables, a et b, sont définies et affectées de certaines valeurs. Leurs valeurs sont comparées les unes aux autres pour déterminer laquelle est la plus élevée à l'aide d'instructions conditionnelles if-else. Le programme ci-dessus se compose de vingt lignes de code pour comparer deux valeurs entre elles. Le même code peut être optimisé sur quatorze lignes en utilisant l'opérateur ternaire, qui est utilisé dans le code ci-dessous :
Considérez le programme C# ci-dessous pour comparer deux valeurs à l'aide d'opérateurs ternaires.
Code :
using System; namespace Project { class MainClass { public static void Main(string[] args) { int a = 40; int b = 30; Console.WriteLine((a < b) ? "a's value is more than b" : "b's value is less than a"); } } }
Sortie :
Dans le programme ci-dessus, deux variables, a et b, sont définies et affectées de certaines valeurs. Leurs valeurs sont comparées les unes aux autres pour déterminer laquelle est la plus élevée à l'aide d'opérateurs ternaires. L'instruction conditionnelle est exécutée et le résultat de l'instruction est affecté à une variable res. Si le résultat de l’instruction conditionnelle est vrai, la deuxième instruction après le « ? », qui indique que la valeur de a est supérieure à celle de b, est imprimée ; sinon, la troisième instruction après le ':' la valeur de b est inférieure à a est imprimée.
Lorsque le deuxième argument ou le troisième argument après « ? » ou après « : » est à nouveau une instruction conditionnelle, alors l'opérateur est appelé opérateur ternaire imbriqué. Considérez le programme ci-dessous, par exemple :
Code :
using System; namespace Project { public class MainClass { public static void Main(string[] args) { int a = 10; int b = 8; Console.WriteLine(a> b ? "a's value is more than b" : a < b ? "a's value is less than b" : a == b ? "C" : "No result"); } } }
Sortie :
Dans le programme ci-dessus, deux variables, a et b, sont définies et affectées de certaines valeurs. Leurs valeurs sont comparées les unes aux autres pour déterminer laquelle est la plus grande ou si elles sont égales à l'aide d'opérateurs ternaires en C#. L'instruction conditionnelle est exécutée et le résultat de l'instruction est affecté à une variable res. Si le résultat de l'instruction conditionnelle est vrai, la deuxième instruction après le « ? » qui est à nouveau une instruction conditionnelle a
Remarque : les opérateurs ternaires ne peuvent pas exécuter d'instructions. Il renvoie uniquement une expression ou une valeur présente dans la deuxième partie ou la troisième partie en fonction du résultat de l'instruction conditionnelle dans la première partie.
Exemples d'opérateurs ternaires C#
Voici les différents exemples d'opérateurs ternaires en C#.
Programme C# utilisant un opérateur ternaire imbriqué pour trouver le plus grand des nombres donnés.
Code :
using System; using System.IO; using System.Text; //Define Namespace namespace program { //Define class public class large { //Define main method public static void Main(string[] args) { //Define three variables to take the input int x; int y; int z; //Get the input from the users Console.Write("First number must be entered : "); x = Convert.ToInt32(Console.ReadLine()); Console.Write("Second number must be entered: "); y = Convert.ToInt32(Console.ReadLine()); Console.Write("Third number must be entered : "); z = Convert.ToInt32(Console.ReadLine()); //largest number is found out by using nested ternary operator int large = (x>y)?((x>z)?x:z):(y>z?y:z); //display the largest number Console.WriteLine("{0} is the largest number", large); Console.ReadLine(); } } }
Sortie :
Programme C# utilisant l'opérateur ternaire pour savoir si un nombre donné est pair ou non.
Code :
using System; // Define Namespace namespace program { // Define class public class check { // Define main method public static void Main(string[] args) { //Assign the number which need to be checked if it is even or not int number = 8; bool ifitisEven; //Logic to check if ithe given number is even or not ifitisEven = (number % 2 == 0) ? true : false ; Console.WriteLine(ifitisEven); } } }
Sortie :
Dans ce tutoriel, nous comprenons le concept des opérateurs ternaires en C# à travers la définition, puis comprenons le fonctionnement des opérateurs ternaires en C#. Ensuite, nous comprenons différents programmes C# utilisant l'opérateur ternaire imbriqué et l'opérateur ternaire simple et leur fonctionnement à l'aide de programmes avec leurs instantanés de sortie inclus avec les résultats des programmes qu'ils contiennent.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!