.NET-HILFE

C# Null-Koaleszenz (So funktioniert es für Entwickler)

Veröffentlicht 14. Januar 2024
Teilen Sie:

Einführung

Der Null-Koalitionsoperator ?? wertet den rechten Operanden aus und gibt das Ergebnis zurück, wenn es ein Nicht-Null-Verweis ist; andernfalls gibt er den Wert seines linken Operanden zurück. Wenn der linke Operand eine nicht-nullbare Wertart ergibt, wird der Null-Bedingungsoperator (??) wertet seinen Operanden nicht auf der rechten Hand aus. Der Zuweisungsoperator ??=, der null-koalierend ist, weist den Wert seines rechten Operanden nur dann seinem linken Operanden zu, wenn der linke Operand zu einem Wert vom Typ nullbar ausgewertet wird. Wenn der Operand auf der linken Seite zu einem Nicht-Null-Wert ausgewertet wird, wird der Null-Koaleszenz-Zuweisungsoperator (??=) wertet seinen rechten Operanden nicht aus. Der Null-Koaleszenz-Operator ist ähnlich wie der ternäre Operator.

Es stimmt, dass in C# der Null-Koalitionsoperator (??) ist ein binärer Operator. Ein Operator, der auf zwei Operanden wirkt, wird als binärer Operator bezeichnet. Bei Verwendung des Null-Koaleszenz-Operators sind zwei Operanden erforderlich, und der Operator wertet jeden Operanden aus, um das Ergebnis zu bestimmen. Jetzt werden wir sehen, null Koaleszenz und null bedingte Operatoren Verwendung in C# unten.

Verwendung von C# Null Coalescing Value Types

  1. Erstellen Sie ein neues C#-Projekt.

  2. Stellen Sie sicher, dass die richtige Version installiert ist.

  3. Verwenden Sie den Null-Koaleszenz-Operator ??.

  4. Prüfen Sie die Wert- oder Objektreferenztypen je nach Anforderung.

  5. Führen Sie den Code aus.

Null-Koaleszenz in C##

Nullwerte in C# werden standardmäßig von der nullkoalitionsoperator (??)das ist die Idee der Koaleszenz, die verwendet wird, um solche Werte zu verwalten, wenn es um nullbare Typen oder Ausdrücke geht, die null ergeben könnten.

Syntax

Es folgt die Syntax für den Null-Koaleszenz-Operator:

result = expression1 ?? expression2;
result = expression1 ?? expression2;
result = If(expression1, expression2)
VB   C#

expression1: Dieser Ausdruck könnte einen Nullwert ergeben.

expression2: Wenn expression1 Null ist, ist dies der zu verwendende Standardwert oder Ersatzausdruck.

ergebnis: Die Variable, die das Ergebnis der Koaleszenzoperationen enthält.

Der Null-Koaleszenz-Operator bietet eine komprimierte Methode zur Zuweisung eines Standardwerts bei der Arbeit mit nullbaren Typen, was sein Hauptziel bei der Rationalisierung von Code und der effizienten Handhabung von Null-Daten ist.

Vorteile

  • Prägnanz: Erledigt Null-Prüfungen, ohne komplexe bedingte Anweisungen oder ternäre Operatoren zu erfordern.
  • Die Lesbarkeit des Codes wird verbessert, indem explizit angegeben wird, dass ein Standardwert bereitgestellt wird, wenn null zurückgegeben wird.

    Es ist wichtig, dass die zu vergleichenden Ausdruckstypen übereinstimmen oder kompatibel sind, bevor man den Null-Koaleszenz-Operator verwendet.

    Die übermäßige Verwendung des Operators ist zwar nützlich, kann aber dazu führen, dass der Code schwerer zu verstehen ist. Wenn es die Klarheit des Codes verbessert, sollten Sie es sparsam einsetzen.

    Bei der Arbeit mit nullbaren Typen oder Szenarien, die Standardwerte erfordern, kann der Null-Koalitionsoperator (??) in C# ist ein effektives Werkzeug zur Verwaltung von Nullwerten und kann helfen, prägnanteren und verständlicheren Code zu schreiben.

    Der Operator, der Null-Koaleszenz ?? verfügt über die folgenden typbezogenen Eigenschaften:

Ergebnis Typ Inferenz

Der Ergebnistyp des Null-Koaleszenz-Operators ist derselbe wie diese Operanden, wenn die Ausdrücke 1 und 2 denselben Typ haben, wie im folgenden Code gezeigt.

int? Value = null;
int result = Value ?? 10;
int? Value = null;
int result = Value ?? 10;
Dim Value? As Integer = Nothing
Dim result As Integer = If(Value, 10)
VB   C#

Typ Kompatibilität

Der Ergebnistyp ist der Typ, in den beide Ausdrücke implizit konvertiert werden können, wenn die Ausdrücke 1 und 2 unterschiedliche Typen haben, aber einer implizit in den anderen konvertiert werden kann.

double? value= null;
int result = (int)(value ?? 5.5);
double? value= null;
int result = (int)(value ?? 5.5);
Imports System

Dim value? As Double= Nothing
Dim result As Integer = CInt(Math.Truncate(If(value, 5.5)))
VB   C#

Typ Förderung

Wenn die Typen der Ausdrücke 1 und 2 nicht implizit konvertiert werden können, wird der Ergebnistyp nach den C#-Typ-Promotion-Regeln ausgewählt.

int? value= null;
long result = value ?? 100L;
int? value= null;
long result = value ?? 100L;
Dim value? As Integer= Nothing
Dim result As Long = If(value, 100L)
VB   C#

Folglich bestimmen die Typen der beteiligten Operanden und die C#-Typkonvertierungsregeln den Typ der Variablen oder des Ausdrucks, der das Ergebnis des Null-Koalitionsoperators enthält (??). Um die korrekte Behandlung von Typen und Werten bei der Verwendung des Null-Koaleszenz-Operators zu gewährleisten, müssen Kompatibilität und wahrscheinliche Typkonvertierungen berücksichtigt werden.

Koaleszenz in IronPDF

IronPDF installieren

Erwerben Sie die IronPDF bibliothek; der kommende Patch erfordert dies. Geben Sie dazu den folgenden Code in den Paketmanager ein:

Install-Package IronPdf

C# Null-Koaleszenz (Wie es für Entwickler funktioniert): Abbildung 1 - IronPDF installieren

Alternativ können Sie auch den NuGet Package Manager verwenden, um nach dem Paket "IronPDF" zu suchen. Sie können das benötigte Paket aus dieser Liste aller mit IronPDF verbundenen NuGet-Pakete auswählen und herunterladen.

C# Null-Koaleszenz (Wie es für Entwickler funktioniert): Abbildung 2 - NuGet-Paketmanager

PDF mit Null-Koaleszenz erstellen

Die C#-Bibliothek IronPDF dient der Erstellung von und der Arbeit mit PDF-Dokumenten. Die Bibliothek bietet einige Funktionen für die Arbeit mit PDFs, wie Formatierung, Textverarbeitung und Bildverwaltung. "Null-Koaleszenz" ist weder eine Methode noch eine Funktion, die es nur bei IronPDF gibt; es handelt sich vielmehr um ein Sprachmerkmal und nicht um einen bibliotheksspezifischen Vorgang.

Wenn Sie jedoch mit IronPDF oder einer anderen Bibliothek in Ihrem C#-Code arbeiten, können Sie die Null-Koalitionsoperatoren verwenden (??) die die Sprache C# bietet.

Um Null-Situationen zu behandeln oder Standardwerte bereitzustellen, z. B. bei der Arbeit mit IronPDF-Objekten, nullbaren Werttypen oder Eigenschaften, die Null zurückgeben können, können Sie den Null-Koalitionsoperator verwenden.

Das folgende Beispiel zeigt, wie der Null-Koalitionsoperator mit IronPDF verwendet werden kann:

using IronPdf;
using IronPdf.Pages;
namespace ConsoleApp1
{
    internal class Program
    {
        static void Main(string [] args)
        {
            int? x = null;
            var outputstr = $@"square of <b>{x}</b> is <b>{ Math.Sqrt(x??30)}</b>";
            var pdfcreate = ChromePdfRenderer.StaticRenderHtmlAsPdf(outputstr);
            pdfcreate.SaveAs("demo.pdf");
            Console.ReadKey();
        }
    }
}
using IronPdf;
using IronPdf.Pages;
namespace ConsoleApp1
{
    internal class Program
    {
        static void Main(string [] args)
        {
            int? x = null;
            var outputstr = $@"square of <b>{x}</b> is <b>{ Math.Sqrt(x??30)}</b>";
            var pdfcreate = ChromePdfRenderer.StaticRenderHtmlAsPdf(outputstr);
            pdfcreate.SaveAs("demo.pdf");
            Console.ReadKey();
        }
    }
}
Imports IronPdf
Imports IronPdf.Pages
Namespace ConsoleApp1
	Friend Class Program
		Shared Sub Main(ByVal args() As String)
			Dim x? As Integer = Nothing
			Dim outputstr = $"square of <b>{x}</b> is <b>{Math.Sqrt(If(x, 30))}</b>"
			Dim pdfcreate = ChromePdfRenderer.StaticRenderHtmlAsPdf(outputstr)
			pdfcreate.SaveAs("demo.pdf")
			Console.ReadKey()
		End Sub
	End Class
End Namespace
VB   C#

Denken Sie daran, dass IronPDF (oder jede Bibliothek) bietet keine besondere Funktion oder Methode für die Verwaltung von Nullwerten bedingter Operatoren; die Verwendung des Null-Koaleszenz-Operators basiert vielmehr auf allgemeinen C#-Sprachmerkmalen und Konzepten für die Handhabung eines Null-Bedingungsoperators. Um mehr über IronPDF zu erfahren, klicken Sie auf hier.

Ausgabe:

C# Null-Koaleszenz (Wie es für Entwickler funktioniert): Abbildung 3 - Vorangehende Beispielausgabe

Schlussfolgerung

Zusammenfassend lässt sich sagen, dass der Null-Koaleszenz-Operator von C# (??) ist eine nützliche Funktion, die den Umgang mit Nullwerten in Ausdrücken und Zuweisungen einfacher und effizienter macht. Dieser Operator vereinfacht den Code, indem er Entwicklern eine klare Möglichkeit gibt, Szenarien zu behandeln, in denen ein Wert null sein könnte. So können Entwickler problemlos Standardwerte angeben oder eine alternative Logik ausführen. Seine Anpassungsfähigkeit macht den Code schlanker und effektiver, vereinfacht Nulltests und verbessert die Lesbarkeit.

IronPDF bietet eine unbefristete Lizenz, Upgrade-Optionen, ein Jahr Software-Wartung und eine dreißigtägige Geld-zurück-Garantie, die alle im $749 Lite-Paket enthalten sind. Die Benutzer haben dreißig Tage Zeit, um das Produkt unter realen Anwendungsbedingungen zu testen. Klicken Sie auf das mitgelieferte link um mehr über IronPDFs Kosten, Lizenzierung und Testversion zu erfahren. Wenn Sie mehr über die Produkte von Iron Software erfahren möchten, besuchen Sie hier.

< PREVIOUS
Datatables .NET (Wie es für Entwickler funktioniert)
NÄCHSTES >
Hangfire .NET Core (Wie es für Entwickler funktioniert)

Sind Sie bereit, loszulegen? Version: 2024.10 gerade veröffentlicht

Gratis NuGet-Download Downloads insgesamt: 11,308,499 Lizenzen anzeigen >