Einzelnen Beitrag anzeigen
Ungelesen 19.12.10, 01:18   #6
Xalir
Erfahrener Newbie
 
Registriert seit: Mar 2009
Beiträge: 154
Bedankt: 56
Xalir ist noch neu hier! | 0 Respekt Punkte
Standard

Nein, == und != sind arithmetische Vergleichsoperatoren, während ! ein unärer Operator ist.
! dreht einfach den booleschen Wert um. Aus true wird false und umgekehrt.

Überlädst Du aber bsw. die Vergleichsoperatoren == und != dann gibt es ein Spezialfall, wo ! ein unerwartetes Ergebnis bringt.

Code:
public static bool operator==(object obj1, object obj2)
{
    return obj1.Equals(obj2)
}

public static bool operator!=(object obj1, object obj2)
{
    if obj1.Equals(obj2) then
        return true
    return false
}
Nun ergibt zwar !(1==1) immer noch false, aber 1!=1 ergibt nun true.
Xalir ist offline   Mit Zitat antworten