C#
 Computer >> コンピューター >  >> プログラミング >> C#

C#のChar.GetNumericValue()メソッドとは?使い方と実行例を解説

C#のChar.GetNumericValue()メソッドは、指定された数値を表すUnicode文字を倍精度浮動小数点数(double型)に変換するために使用されます。

なお、指定した文字が数値を表さない場合(英字など)、このメソッドは-1を返します。

構文

構文は以下のとおりです。

public static double GetNumericValue (char ch);

上記の構文において、パラメータchは変換対象となるUnicode文字です。

使用例

まず、Char.GetNumericValue()メソッドの基本的な使用例を見てみましょう。

using System;
public class Demo {
   public static void Main(){
      char val = 'm';
      bool res;
      Console.WriteLine("valのハッシュコード = "+val.GetHashCode());
      res = val.Equals('m');
      Console.WriteLine("戻り値 = "+res);
      Console.WriteLine("数値 = "+Char.GetNumericValue(val));
   }
}

出力

このコードを実行すると、以下の出力が得られます。

valのハッシュコード = 7143533
戻り値 = True
数値 = -1

この例では、文字「m」は数値を表さないため、Char.GetNumericValue()メソッドは-1を返しています。

使用例(数値文字の場合)

次に、数値を表す文字を指定した場合の例を見てみましょう。

using System;
public class Demo {
   public static void Main(){
      char val = '5';
      bool res;
      Console.WriteLine("valのハッシュコード = "+val.GetHashCode());
      res = val.Equals('m');
      Console.WriteLine("戻り値 = "+res);
      Console.WriteLine("数値 = "+Char.GetNumericValue(val));
   }
}

出力

このコードを実行すると、以下の出力が得られます。

valのハッシュコード = 3473461
戻り値 = False
数値 = 5

この例では、文字「5」は数値を表すため、Char.GetNumericValue()メソッドは5.0(double型)を返します。なお、Equalsメソッドによる文字「m」との比較結果はFalseとなっている点にも注目してください。

  1. C#のChar.IsSymbol()メソッドとは?文字が記号かどうかを判定する方法を解説

    Char.IsSymbol()メソッドとはC#のChar.IsSymbol()メソッドは、指定された文字列内の指定位置にある文字が、Unicodeの「記号(Symbol)」カテゴリに分類されているかどうかを判定するメソッドです。戻り値はbool型で、記号であればtrue、そうでなければfalseを返します。判定対象となるのは、数学記号(+、=など)、通貨記号($、¥など)、修飾記号、その他の記号といったUnicode記号カテゴリに属する文字です。構文public static bool IsSymbol (string str, int index);パラメータstr:評価対象の文字列inde

  2. C#のConvert.ToUInt64メソッドで値を64ビット符号なし整数に変換する方法

    C#では、Convert.ToUInt64()メソッドを使うことで、指定した値を64ビット符号なし整数(ulong型)に変換できます。このメソッドは、文字や数値などさまざまな型の値を受け取り、0~18,446,744,073,709,551,615の範囲内の符号なし整数として返します。変換の基本まず、char型の値を用意します。以下は文字「a」を格納した変数の例です。char ch = a;この値をConvert.ToUInt64()メソッドで64ビット符号なし整数に変換してみましょう。ulong res; res = Convert.ToUInt64(ch);char型の「a」はUnicod