Sto iniziando a imparare i tipi nullable e mi sono imbattuto nel seguente comportamento.
Mentre provo nullable int, vedo che l'operatore di confronto mi dà risultati inaspettati. Ad esempio, nel mio codice di seguito, l'output che ottengo è "entrambi e 1 sono uguali" . Nota, non stampa anche "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);
Speravo che qualsiasi numero intero non negativo fosse maggiore di null, mi sto perdendo qualcosa qui?