This article has been localized into Czech by the community.
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!