Innehållsförteckning:
Definition - Vad betyder Null-Coalescing Operator?
En operatör för nollkoalesering, i C #, är en operatör som används för att kontrollera om värdet på en variabel är noll. Det representeras av symbolen "??".
Nollkoalesceringsoperatören möjliggör val av det första värdet som inte är noll från ett par värden. Det används för att ställa in standardvärdet för variabler av nullable värdetyp eller referenstyp. Det kan användas för att bygga ett uttryck med förenklad syntax som logiskt motsvarar ett uttryck med en if-sats eller ternär operatör i en mer kompakt form. Uttrycket som innehåller nollkoalescerande operatör har minimal källkod och ger bättre läsbarhet.
I applikationer som de som är relaterade till databas- och XML-data kan variabler uppstå i ett odefinierat tillstånd, vilket innebär att de inte är inställda på något korrekt värde. En operatör med nollkoalesering används för att kontrollera en sådan variabel (av nollbara typer) för null. Om variabeln är noll, används operatören null-sammanslagning för att tillhandahålla standardvärdet medan den tilldelas till en variabel av icke-nollbara typer.
Techopedia förklarar Null-Coalescing Operator
Nollkoalescerande operatören är en binär operatör som används i ett villkorligt uttryck av formen, "a ?? b", där uttrycket i den vänstra operand, "a", måste vara nullable typ eller referenstyp. Om "a" inte utvärderas som noll returnerar det resultatet av utvärderingen av "a". Annars utvärderas uttrycket i den högra operand, "b" för att få resultatet av hela uttrycket.
Exempelvis kan operatören nollstoppa sig i en egenskap hos ett objekt för att returnera ett anpassat standardvärde för att undvika att ett nollvärde returneras.
Tilldelningen av en variabel med en nullabar värdetyp till en icke nullabar typ resulterar i ett kompileringsfel, och användningen av explicita cast för en sådan tilldelning kan resultera i ett undantag. En null-koalescerande operatör används i sådana tilldelningar för att undvika kompilatorfelet och undantaget.
Operandema som används i uttrycket som innehåller nollkoalescerande operatör måste utvärdera till en matchande typ eller bör implicit konverteras till en vanlig typ.
Åtgärderna i ett uttryck som använder operatören null-sammanslagning grupperas från höger till vänster.
Denna definition har skrivits i samband med C #