In C#? Stellt einen nullbaren Typ dar, der alle T-Werte des Basistyps und zusätzliche Nullwerte darstellen kann? ? Das bedeutet, dass der Null-Koaleszenzoperator bedeutet, dass der Operand, wenn er nicht Null ist, den Wert auf der linken Seite zurückgibt, andernfalls auf der rechten Seite usw.
in C#? Abhängig von der Anzahl gibt es unterschiedliche Verwendungszwecke, z. Und? ? Die Bedeutung dieser beiden Operatoren ist unterschiedlich. Als nächstes werde ich Ihnen das ? in C# im Artikel ausführlich vorstellen. Die spezifische Verwendung hat einen gewissen Referenzwert. Ich hoffe, dass sie für alle hilfreich ist
]
? (Nullable-Typ) Ein nullable-Typ ist eine Instanz der -Struktur. Ein nullable-Typ kann alle Werte T des Basistyps sowie zusätzliche Nullwerte darstellen. Der zugrunde liegende Typ T kann ein beliebiger Werttyp sein, der keine NULL-Werte zulässt. Aber T kann kein Referenztyp sein. Nullable-Typen können verwendet werden, um undefinierte Werte des zugrunde liegenden Typs darzustellen. Nullable-Typen haben die folgenden Eigenschaften:
(1) Unter einem Nullable-Typ kann einer Variablen ein Nullwert zugewiesen werden, ohne dass ein Nullable-Typ basierend auf einem Referenztyp erstellt wird. (2) Nullable-Typen unterstützen keine verschachtelten Nullable-Typen.
(3) Nullable-Typen unterstützen keine Var-Typen. Wenn Sie Nullable und var verwenden, tritt ein Kompilierungsfehler auf. System.Nullable 8742468051c85b06f0a0af9e3e506b5c
// C# program to illustrate the // use of Nullable type using System; class GFG { // 主方法 static public void Main() { int ? a = null; int ? b = 2345; Console.WriteLine(a); Console.WriteLine(b); } }Ausgabeergebnis: 2345 ? ? (Null-Koaleszier-Operator)
In C# wird der ??-Operator als Null-Koaleszier-Operator bezeichnet, der als Null-Koaleszier-Operator bezeichnet wird. Die Bedeutung besteht darin, dass, wenn der Operand nicht null ist, der linke Operand zurückgegeben wird; andernfalls wird der rechte Operand zurückgegeben. Wenn Sie einen Nullable-Werttyp einem Nicht-Nullable-Werttyp zuweisen, ohne den ??-Operator zu verwenden, wird ein Fehler bei der Kompilierung generiert. Wenn eine Umwandlung verwendet wird und derzeit kein nullbarer Werttyp definiert ist, wird eine InvalidOperationException-Ausnahme ausgelöst.
Beispiel:
//声明a和b int?a=null; int b; b=a??2;//b的值为2 a=6; b=a??8;//b的值为6
?: (ternärer Operator)
In C# gibt es einen speziellen Operator namens ternäres Operatorsymbol, ähnlich wie if- anders. Der ternäre Operator vergleicht zwei Werte und gibt einen darauf basierenden Wert zurück. Die Syntax des ternären Operators lautet:条件表达式?表达式1:表达式2;Er kann einen Wert eines beliebigen Datentyps zurückgeben. Beispiel:
using System; namespace Tutpoint { class Program { public static void Compare(int a, int b) { string output = a > b ? "A 大于 B" : "B 大于 A"; Console.WriteLine(output); } static void Main(string[] args) { Program.Compare(66, 579); Console.ReadKey(); } } }Die Ergebnisausgabe ist: B ist größer als A
Zusammenfassung: Das Obige ist der gesamte Inhalt dieses Artikels, ich hoffe, das wird so sein allen hilfreich sein.
Das obige ist der detaillierte Inhalt vonin C#? Welche Verwendungsmöglichkeiten gibt es?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!