ฉันเริ่มเรียนรู้ประเภท nullable และพบกับพฤติกรรมดังต่อไปนี้
ในขณะที่พยายาม nullable int ฉันเห็นตัวดำเนินการเปรียบเทียบให้ผลลัพธ์ที่ไม่คาดคิด ยกตัวอย่างเช่นในรหัสของฉันด้านล่างผลผลิตที่ฉันได้รับคือ"ทั้ง 1 และมีค่าเท่ากัน" หมายเหตุมันไม่พิมพ์ "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);
ฉันหวังว่าเลขจำนวนเต็มใด ๆ ที่ไม่เป็นลบจะยิ่งใหญ่กว่าโมฆะฉันขาดอะไรไปหรือเปล่า