この記事はで読むことができます。
この記事でわかること
- int.parse()メソッドで文字列をint型に変換する方法
- tryParse()メソッドを使ってエラーを避ける方法
Dartで開発していると、ユーザーからの入力やAPIのレスポンスで取得した文字列を整数型(int型)に変換する場面が多々あります。この際、正しい変換方法を使わなければ、プログラムがエラーを起こすこともあります。この記事では、int.parse()
を使って文字列をint型に変換する基本的な方法を解説し、変換が失敗した場合のエラーハンドリングも含めた手法について詳しく説明します。これにより、Dartでの数値変換が安全かつスムーズに行えるようになります。
方法1:int.parse()
メソッドで文字列をint型に変換する
Dartでは、int.parse()
メソッドを使って文字列をint型に変換します。このメソッドは、数値に変換可能な文字列に対してのみ動作します。もし数値に変換できない文字列を渡した場合、FormatException
がスローされます。
void main() {
var text = "123";
// 文字列をint型に変換する
int num = int.parse(text);
print(num); // 出力: 123
}
この例では、"123"
という文字列をint.parse()
で変換して、整数123
を取得しています。
int.parse()は、数値として解釈できる文字列に対してのみ使用でき、変換が成功すればその数値を返します。
方法2:tryParse()
メソッドを使ってエラーを避ける
int.parse()
メソッドは、変換できない文字列を入力するとエラーを起こします。これを避けるために、Dartはint.tryParse()
メソッドを提供しています。このメソッドは、変換に失敗した場合にnull
を返し、プログラムがクラッシュしないようにします。
void main() {
var text = "abc";
// tryParseで変換失敗時はnullを返す
int? num = int.tryParse(text);
print(num); // 出力: null
}
tryParse()
メソッドを使うことで、変換に失敗してもnull
を返し、安全にプログラムを実行できます。
tryParse()メソッドは、変換できない文字列に対してもエラーを出さずに処理できるため、ユーザー入力や外部データの処理に便利です。
方法3:parse()
メソッドのエラーハンドリング
int.parse()
メソッドにエラーハンドリングを組み込む場合、try-catch
を使ってエラーを捕捉するか、onError
オプションを使用してカスタムエラー処理を行います。特に、エラーが発生した際にデフォルト値を返す場合などに有効です。
void main() {
var text = "abc";
// onErrorオプションを使ってエラー処理を行う
int num = int.parse(text, onError: (value) => 0);
print(num); // 出力: 0 (エラーが発生したため)
}
この方法では、変換に失敗した場合に0
を返すようにしています。エラーを防ぎながら、代替の処理を行うことができます
エラーを防ぎながら、代替の処理を行うことができます
Dartで文字列をint型に変換するには、int.parse()
メソッドが基本ですが、入力データが不確実な場合は、tryParse()
やonError
オプションを使うことで安全にエラーハンドリングができます。これらのメソッドを組み合わせることで、アプリケーションの信頼性を高め、ユーザーからの予期しない入力にも柔軟に対応できるようになります。
ご質問があれば、どうぞお気軽にお尋ねください。
それでは、Happy Fluttering!