C#のint.Parseメソッドとint.TryParseメソッドの違いと使い方
C#では、数値を表す文字列を整数(int型)に変換するために、int.Parseメソッドとint.TryParseメソッドを使用できます。どちらも同じ変換処理を行いますが、変換に失敗した場合の挙動が大きく異なります。
int.Parseとint.TryParseの違い
int.TryParseメソッドは、文字列を整数に変換できなかった場合にfalseというブール値を返します。一方、int.Parseメソッドは変換できない場合に例外(Exception)をスローします。
そのため、ユーザー入力など不確実なデータを扱う場面では、例外処理が不要なint.TryParseの方が安全で効率的です。
int.Parseメソッドの使用例
まずは、int.Parseメソッドを使った基本的な例を見てみましょう。
using System.IO;
using System;
class Program {
static void Main() {
int res;
string myStr = "120";
res = int.Parse(myStr);
Console.WriteLine("String is a numeric representation: "+res);
}
}
出力結果
String is a numeric representation: 120
この例では、文字列「120」が整数120に正常に変換され、コンソールに出力されています。ただし、myStrが「abc」のような数値以外の文字列だった場合、int.ParseはFormatExceptionなどの例外をスローすることに注意してください。
int.TryParseメソッドの使用例
次に、int.TryParseメソッドの使用例を見てみましょう。
using System.IO;
using System;
class Program {
static void Main() {
bool res;
int a;
string myStr = "120";
res = int.TryParse(myStr, out a);
Console.WriteLine("String is a numeric representation: "+res);
}
}
出力結果
String is a numeric representation: True
int.TryParseメソッドは第1引数に変換対象の文字列、第2引数にoutキーワードを付けた出力用の変数を渡します。変換が成功すると戻り値としてtrueが返され、out引数には変換後の整数が格納されます。失敗した場合はfalseが返され、out引数には0が設定されます。
まとめ
- int.Parse:変換に成功すれば整数を返すが、失敗すると例外をスローする
- int.TryParse:変換の成否をブール値で返し、失敗しても例外が発生しないため安全
入力値が確実に数値であることが保証されている場合はint.Parse、そうでない場合はint.TryParseを使い分けることで、堅牢なC#プログラムを作成できます。
-
C#のbool.Parseメソッドで文字列をbool型に変換する方法
C#では、文字列をbool型(真偽値)に変換する際に、bool.Parseメソッドを使用します。このメソッドは、「true」や「false」といった文字列を、プログラム内で扱える真偽値へと変換してくれます。基本的な使い方まず、変換元となる文字列を用意します。string str = true;次に、bool.Parseメソッドを使って文字列をbool型に変換します。bool res = bool.Parse(str);サンプルコード以下は、文字列をbool型に変換して結果をコンソールに出力する完全なコード例です。using System; using System.Linq; class D
-
【C#】String.Join()メソッドで文字列配列を連結する方法
String.Join()メソッドとはC#のString.Join()メソッドは、文字列配列のすべての要素を1つの文字列に連結するためのメソッドです。各要素の間には、引数で指定した区切り文字(セパレーター)が自動的に挿入されます。たとえば、区切り文字として改行コード「\n」を指定すれば、配列の各要素がそれぞれ別の行に配置された、複数行の文字列を簡単に作成できます。基本的な構文String.Join(\n, starray);第1引数: 要素間に挿入する区切り文字第2引数: 連結対象の文字列配列戻り値: 連結された1つの文字列サンプルコード以下は、5つの文字列要素を持つ配列を改行コードで連結し、