IIF-Äquivalent in C#

Fil Zjazel Romaeus Villegas 12 Oktober 2023
IIF-Äquivalent in C#

Dieses Tutorial zeigt, wie Sie das IIF-Äquivalent in C# und anderen Alternativen verwenden.

IIF steht für immediate if und ist in der Programmiersprache Visual Basic verfügbar. In einer einzelnen Zeile können Sie eine bestimmte Bedingung übergeben und die Werte angeben, die zurückgegeben werden sollen, wenn die Bedingung wahr oder falsch ist.

IIF(condition, True, False)

Während C# kein genaues Äquivalent dazu hat, können Sie das ? Operator.

C# ? Operator

Ein ternärer Operator, allgemein auch als Bedingungsoperator bekannt, ist ein Operator, der drei Operanden anstelle der üblichen ein oder zwei akzeptiert, die die meisten Operatoren verwenden. In diesem Fall wird das ? Operator vereinfacht einen if-else-Block. Die allgemeine Struktur der Verwendung des ? Betreiber ist wie folgt:

string string_val = (anyBool ? "Value if True" : "Value if False");

Beispiel:

using System;
using System.Collections.Generic;

namespace StringJoin_Example {
  class Program {
    static void Main(string[] args) {
      // Initialize the integer variable a
      int a = 1;
      // Check if the condition is true
      string ternary_value = (a == 1 ? "A is Equal to One" : "A is NOT Equal to One");
      // Print the result to the console
      Console.WriteLine("Initial Value (" + a.ToString() + "): " + ternary_value);

      // Update the variable
      a = 2;
      // Re check if the conidition is still true
      ternary_value = (a == 1 ? "A is Equal to One" : "A is NOT Equal to One");
      // Print the result to the console
      Console.WriteLine("Updated Value (" + a.ToString() + "): " + ternary_value);

      Console.ReadLine();
    }
  }
}

Im obigen Beispiel haben wir eine Integer-Variable sowie einen String erstellt, dessen Wert sich abhängig vom Wert der Ganzzahl a ändert. Um den String-Wert festzulegen, prüfen wir den Wert von a mit dem ternären Operator. Wenn festgestellt wird, dass a gleich eins ist, spiegelt die Zeichenfolge dies wider und umgekehrt. Nachdem Sie den Wert von a geändert haben, können Sie beobachten, dass sich der Zeichenfolgenwert in der gedruckten Ausgabe wie erwartet ändert.

Ausgabe:

Initial Value (1): A is Equal to One
Updated Value (2): A is NOT Equal to One