2016-11-08 7 views
-5

Ich kenne die n.HasValue && n.Value > 0 aber wirklich neugierig Null-Wert zu testen, so:Ist null negativ oder positiv?

decimal? n = null; 
Console.Write(n>0); // false 
Console.Write(n<0); // false 

So ist null Objekt positiv oder negativ in C#?

+11

Weder. Und das Verhalten, das Sie sehen, scheint das zu demonstrieren. – David

+0

weder als Ihr Test beweist. – corn3lius

+1

Versuchen Sie 'Console.Write (n == 0);' und erstaunt sein ... –

Antwort

4

n > 0 kompiliert zu n.HasValue && n.Value > 0, was false produziert, weil n.HasValue false zurückgibt. Gleiches gilt für alle anderen Bedingungen, da HasValue immer an erster Stelle steht.

Verwandte Themen