Operatore || (Riferimenti per C#)

Aggiornamento: novembre 2007

L'operatore OR condizionale (||) esegue un OR logico degli operandi bool, ma valuta il secondo operando solo se necessario.

Note

L'operazione

x || y

corrisponde all'operazione

x | y

con la differenza che, se x è true, y non verrà valutato, in quanto il risultato dell'operazione di OR è true indipendentemente dal valore di y. Questa condizione viene denominata anche valutazione "short circuit".

L'operatore OR condizionale non può essere sottoposto a overload. Tuttavia, anche gli overload dei normali operatori logici e degli operatori true e false vengono considerati, con qualche limitazione, overload degli operatori logici condizionali.

Esempio

Nell'esempio riportato di seguito, l'espressione che utilizza l'operatore || valuta solo il primo operando.

class NullCoalesce
{
    static int? GetNullableInt()
    {
        return null;
    }

    static string GetStringValue()
    {
        return null;
    }

    static void Main()
    {
        // ?? operator example.
        int? x = null;

        // y = x, unless x is null, in which case y = -1.
        int y = x ?? -1;

        // Assign i to return value of method, unless
        // return value is null, in which case assign
        // default value of int to i.
        int i = GetNullableInt() ?? default(int);

        string s = GetStringValue();
        // ?? also works with reference types. 
        // Display contents of s, unless s is null, 
        // in which case display "Unspecified".
        Console.WriteLine(s ?? "Unspecified");
    }
}

Vedere anche

Concetti

Guida per programmatori C#

Riferimenti

Operatori di C#

Altre risorse

Riferimenti per C#