Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C#

ดึง TypeCode สำหรับชนิดค่า Decimal ใน C#

ภาพรวม

เมธอด Decimal.GetTypeCode() คืนค่า TypeCode enumeration ที่ระบุชนิดของค่า ซึ่งสำหรับ Decimal จะคืนค่า TypeCode.Decimal เสมอ

ตัวอย่างที่ 1: ดึง TypeCode ของ Decimal.MaxValue

using System;

public class Demo
{
    public static void Main()
    {
        Decimal val = Decimal.MaxValue;
        Console.WriteLine("Decimal Value = {0}", val);
        Console.WriteLine("HashCode = {0}", (val.GetHashCode()));
        TypeCode type = val.GetTypeCode();
        Console.WriteLine("TypeCode = " + type);
    }
}

ผลลัพธ์

Decimal Value = 79228162514264337593543950335
HashCode = 1173356544
TypeCode = Decimal

ตัวอย่างที่ 2: ดึง TypeCode ของค่า Decimal ทั่วไป

using System;

public class Demo
{
    public static void Main()
    {
        Decimal val = 3972.491M;
        Console.WriteLine("Decimal Value = {0}", val);
        Console.WriteLine("HashCode = {0}", (val.GetHashCode()));
        TypeCode type = val.GetTypeCode();
        Console.WriteLine("TypeCode = " + type);
    }
}

ผลลัพธ์

Decimal Value = 3972.491
HashCode = 620041307
TypeCode = Decimal

คำอธิบายเพิ่มเติม

  • TypeCode เป็น enum ที่กำหนดชนิดพื้นฐาน (primitive types) เช่น Boolean, Byte, Char, DateTime, Decimal, Double, Int16, Int32, Int64, String, Object, ฯลฯ
  • ใช้ในการเขียนโค้ดที่ขึ้นอยู่กับชนิด (type-switching) หรือ serialization
  • GetHashCode() คืนค่า hash code สำหรับการใช้ใน hashtable/dictionary
  • Decimal เป็น value type (struct) ไม่ใช่ reference type