Zaczynam uczyć się typów zerowych i popadłem w następujące zachowanie.W jaki sposób operator porównania działa z wartością null int?
Podczas próby zerowania int, widzę operator porównania daje mi nieoczekiwany wynik. Na przykład, W moim kodzie poniżej, wyjście, które otrzymuję, to "oba i 1 są równe". Uwaga, nie wyświetla również "null".
int? a = null;
int? b = 1;
if (a < b)
Console.WriteLine("{0} is bigger than {1}", b, a);
else if (a > b)
Console.WriteLine("{0} is bigger than {1}", a, b);
else
Console.WriteLine("both {0} and {1} are equal", a, b);
Miałem nadzieję dowolny nieujemna liczba całkowita będzie większa niż null, jestem brakuje czegoś tutaj?
[Tutaj jest małe .NET Fiddle] (https://dotnetfiddle.net/NddZ9N), aby zobaczyć kilka przypadków. –