บทนำ
ฟิลด์ UInt16.MinValue ใน C# แสดงค่าต่ำสุดที่เป็นไปได้ของจำนวนเต็ม 16 บิตที่ไม่มีเครื่องหมาย (ushort) ซึ่งมีค่าเท่ากับ 0
ไวยากรณ์ (Syntax)
public const ushort MinValue = 0;
ตัวอย่างที่ 1: แสดงค่าขอบเขตของ UInt16
using System;
public class Demo
{
public static void Main()
{
ushort val1 = 23;
ushort val2 = 0;
Console.WriteLine("Value1 = " + val1);
Console.WriteLine("Value2 = " + val2);
Console.WriteLine("HashCode for value1 = " + val1.GetHashCode());
Console.WriteLine("HashCode for value2 = " + val2.GetHashCode());
Console.WriteLine("Are they equal? = " + val1.Equals(val2));
TypeCode type1 = val1.GetTypeCode();
TypeCode type2 = val2.GetTypeCode();
Console.WriteLine("TypeCode for val1 = " + type1);
Console.WriteLine("TypeCode for val2 = " + type2);
Console.WriteLine("Minimum Value = " + UInt16.MinValue);
}
}
ผลลัพธ์
Value1 = 23 Value2 = 0 HashCode for value1 = 23 HashCode for value2 = 0 Are they equal? = False TypeCode for val1 = UInt16 TypeCode for val2 = UInt16 Minimum Value = 0
ตัวอย่างที่ 2: ตรวจสอบและแปลงค่า ulong เป็น ushort
using System;
public class Demo
{
public static void Main()
{
ulong[] val = { 8998, 899898778, 878787878 };
ushort res;
foreach (ulong a in val)
{
if (a >= UInt16.MinValue && a <= UInt16.MaxValue)
{
res = Convert.ToUInt16(a);
Console.WriteLine("Converted: " + res);
}
else
{
Console.WriteLine("Not Possible");
}
}
}
}
ผลลัพธ์
Converted: 8998 Not Possible Not Possible
สรุป
ฟิลด์ UInt16.MinValue (ซึ่งเป็น 0) และ UInt16.MaxValue (ซึ่งเป็น 65,535) ใช้สำหรับตรวจสอบขอบเขตก่อนแปลงชนิดข้อมูลขนาดใหญ่กว่า (เช่น ulong, long) ให้เป็น ushort เพื่อป้องกัน OverflowException