Udostępnij za pośrednictwem


Operator == (odwołanie w C#)

Aby wstępnie zdefiniowane typy wartości, operator równości (==) zwraca wartość true, jeśli wartości argumentów są równe, false inaczej.Dla odwołania do innych niż typy string, == zwraca true , jeśli jej dwa operandy odnoszą się do tego samego obiektu.Dla string typu, == porównuje wartości ciągów.

Uwagi

Typy zdefiniowane przez użytkownika wartości mogą przeciążać == operatora (zobacz operator).Tak może typy zdefiniowane przez użytkownika odniesienia, chociaż domyślnie == zachowuje się jak opisano powyżej dla obu typów odniesienia wstępnie zdefiniowane i zdefiniowane przez użytkownika.Jeśli == jest przeciążony, ! = również mogą być przeciążone.Operacje na typy zintegrowane ogólnie są dozwolone na wyliczenie.

Przykład

class Equality
{
    static void Main()
    {
        // Numeric equality: True
        Console.WriteLine((2 + 2) == 4);

        // Reference equality: different objects,  
        // same boxed value: False. 
        object s = 1;
        object t = 1;
        Console.WriteLine(s == t);

        // Define some strings: 
        string a = "hello";
        string b = String.Copy(a);
        string c = "hello";

        // Compare string values of a constant and an instance: True
        Console.WriteLine(a == b);

        // Compare string references;  
        // a is a constant but b is an instance: False.
        Console.WriteLine((object)a == (object)b);

        // Compare string references, both constants  
        // have the same value, so string interning 
        // points to same reference: True.
        Console.WriteLine((object)a == (object)c);
    }
}
/*
Output:
True
False
True
False
True
*/

Zobacz też

Informacje

Operatory C#

Koncepcje

Przewodnik programowania w języku C#

Inne zasoby

Odwołanie w C#