TOC

This article has been localized into Czech by the community.

Operátory:

Operátor slučování NULL

Operátor `??` se také nazývá "operátor slučování NULL", protože umožňuje zkontrolovat NULL hodnotu a přiřadit záložní hodnotu v jednom řádku kódu. To může vypadat triviálně i bez tohoto operátoru, ale zvažte následující příklad:

string userSuppliedName = null; 

if (userSuppliedName == null)
    Console.WriteLine("Hello, Anonymous!");
else
    Console.WriteLine("Hello," + userSuppliedName);

Měli byste vnímat proměnnou userSuppliedName jako něco, co pochází od uživatele, například z dialogu nebo datového souboru - něco, co by mohlo mít za následek, že hodnota bude NULL. Musíme se s tím vypořádat tak, že před použitím hodnotu zkontrolujeme, v tomto případě pro zobrazení jména uživateli.

V předchozím příkladu používáme klasický přístup if-else, ale s operátorem slučování NULL to můžeme udělat mnohem stručněji, v jednom řádku:

Console.WriteLine("Hello, " + (userSuppliedName ?? "Anonymous")); 

V jednom příkazu žádáme interpret, aby použil proměnnou userSuppliedName, pokud má hodnotu – pokud ne, poskytneme záložní hodnotu, v tomto případě jméno "Anonymní". Krátké a jednoduché!

Shrnutí

Jako všechna "syntaktická sladidla", tak i operátor slučování NULL, je vždy kompromis mezi udržením kódu krátkým a čitelným. Někteří zjišťují, že tyto operátory ztěžují čtení a navigaci v kódu, zatímco jiní milují, jak jsou krátké a jednoduché. Nakonec je to vše na vás!


This article has been fully translated into the following languages: Is your preferred language not on the list? Click here to help us translate this article into your language!