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