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

เมธอด Char.GetNumericValue ใน C# พร้อมตัวอย่าง


บทนำ

เมธอด Char.GetNumericValue() ใน C# ใช้แปลงตัวอักษร Unicode ที่เป็นตัวเลข (numeric character) ให้เป็นค่าจุดลอยตัวความแม่นยำสองเท่า (double) หากตัวอักษรไม่ใช่ตัวเลข จะคืนค่า -1

ไวยากรณ์ (Syntax)

public static double GetNumericValue (char ch);

โดยที่ ch คือตัวอักษร Unicode ที่ต้องการแปลง

ตัวอย่างที่ 1: ตัวอักษรที่ไม่ใช่ตัวเลข

using System;

public class Demo 
{
    public static void Main()
    {
        char val = 'm';
        bool res;
        
        Console.WriteLine("Hashcode for val = " + val.GetHashCode());
        res = val.Equals('m');
        Console.WriteLine("Return Value = " + res);
        Console.WriteLine("Numeric Value = " + Char.GetNumericValue(val));
    }
}

ผลลัพธ์

Hashcode for val = 7143533
Return Value = True
Numeric Value = -1

ตัวอย่างที่ 2: ตัวอักษรที่เป็นตัวเลข

using System;

public class Demo 
{
    public static void Main()
    {
        char val = '5';
        bool res;
        
        Console.WriteLine("Hashcode for val = " + val.GetHashCode());
        res = val.Equals('m');
        Console.WriteLine("Return Value = " + res);
        Console.WriteLine("Numeric Value = " + Char.GetNumericValue(val));
    }
}

ผลลัพธ์

Hashcode for val = 3473461
Return Value = False
Numeric Value = 5

สรุป

เมธอด Char.GetNumericValue() รองรับตัวเลข Unicode ทุกรูปแบบ รวมถึงตัวเลขอรบิก-อินเดีย (٠١٢٣٤٥٦٧٨๑) ตัวเลขโรมัน (ⅰⅱⅲ) และตัวเลขในภาษาอื่นๆ คืนค่า -1 สำหรับตัวอักษรที่ไม่มีค่าตัวเลข ใช้ในการแปลงข้อความที่มีตัวเลขผสมให้เป็นค่าตัวเลขจริง