Eine andere Art, '> =' zu beschreiben, ist: Nicht weniger als. Keine Erwähnung von Gleichen. Sobald einer der Operanden in einem Nichtgleichheitstest Null ist, ist das Ergebnis ebenfalls unbekannt (ist Null). Wenn Sie jedoch wissen möchten, ob beide Operanden Null sind, ist Null == Null ein vernünftiger Test (sollte zu true führen). Die Beseitigung des Ungleichheitsteils des Operators macht den Unterschied.
Das folgende Codebeispiel von http://msdn.microsoft.com/en-us/library/2cf62fcy.aspx#sectionToggle4 fasst zusammen, wie C # Null behandelt:
int? num1 = 10;
int? num2 = null;
if (num1 >= num2)
{
Console.WriteLine("num1 is greater than or equal to num2");
}
else
{
Console.WriteLine("num1 >= num2 returned false (but num1 < num2 also is false)");
}
if (num1 < num2)
{
Console.WriteLine("num1 is less than num2");
}
else
{
Console.WriteLine("num1 < num2 returned false (but num1 >= num2 also is false)");
}
if (num1 != num2)
{
Console.WriteLine("Finally, num1 != num2 returns true!");
}
num1 = null;
if (num1 == num2)
{
Console.WriteLine("num1 == num2 returns true when the value of each is null");
}