C# で Char を Int に変換する
-
C#
のchar
データ型 -
C#
でChar.GetNumericValue()
メソッドを使用してchar
をint
に変換する -
C#
でConvert.ToInt32()
メソッドを使用してchar
をint
に変換する -
C#
でInt32.Parse()
メソッドを使用してchar
をint
に変換する
C# はオブジェクト指向プログラミング言語です。これは、変数が格納する値のタイプを示しながら、すべての変数を宣言する必要があることを意味します。
C# 変数は、データ型
と呼ばれるさまざまな形式または型で保存されます。
C#
の char
データ型
Char
データ型で変数を宣言するサンプル構文。
type variableName = value;
char grade = 'A';
char myCharacter = 'X';
char myLuckyNumber = '3';
char
データ型には 1 文字が格納されます。文字は、'A'
や'X'
などの単一引用符で囲む必要があります。
C#
で Char.GetNumericValue()
メソッドを使用して char
を int
に変換する
Char.GetNumericValue()
メソッドは、指定された数値の Unicode 文字を倍精度浮動小数点数に変換します。
メソッドが一重引用符で囲まれた数値を持つ char
変数に適用される場合、その数値が返されます。それ以外の場合は-1 が返されます。
コードスニペット:
using System;
public class GetNumericValue {
public static void Main() {
int result = (int)Char.GetNumericValue('8');
Console.WriteLine(result); // Output: "8"
Console.WriteLine(Char.GetNumericValue('X')); // Output: "-1"
}
}
出力:
8-1
C#
で Convert.ToInt32()
メソッドを使用して char
を int
に変換する
Convert.ToInt32()
関数は、指定された値を 32 ビットの符号付き整数に変換します。ToInt32()
メソッドには、渡された引数のデータ型に応じて非常に多くのバリエーションがあります。
コードスニペット:
using System;
public class ConvertCharToInt {
public static void Main() {
char c = '3';
Console.WriteLine(Convert.ToInt32(c.ToString())); // Output: "3"
Console.WriteLine(Convert.ToInt32(c)); // Output: "51"
}
}
出力:
351
char
データ型が引数として Convert.Tolnt32()
メソッドに渡されると、同等の ASCII
が返されます。
C#
で Int32.Parse()
メソッドを使用して char
を int
に変換する
Int32.Parse()
メソッドは、数値の string
表現を 32 ビットの符号付き整数に相当するものに変換します。このメソッドの欠点は、数値を string
引数として渡す必要があることです。
char
データ型は最初に string
データ型に変換する必要があり、一重引用符' '
で数値を含める必要があります。そうでない場合、コードはオーバーフロー例外
をスローします。
コードスニペット:
using System;
public class GetNumericValue {
public static void Main() {
char c = '3';
char s = 'x';
string str = c.ToString();
string ex = s.ToString();
Console.WriteLine(Int32.Parse(str));
// Console.WriteLine(Int32.Parse(ex)); // Output: "ThrowEx"
}
}
出力:
3
以下に示すように、char
値が一重引用符' '
の数値でない場合、例外がスローされます。
コードスニペット:
using System;
public class GetNumericValue {
public static void Main() {
char s = 'x';
string ex = s.ToString();
Console.WriteLine(Int32.Parse(ex));
}
}
出力:
Unhandled Exception:
System.FormatException: Input string was not in a correct format.