どうも、ちょげ(@chogetarou)です。
Dartで文字列をint型に変換する方法を紹介します。
方法

文字列をint型に変換するには、pasrseメソッドを使います。
具体的には、「int.parse(str)」のように、「int」から引数に変換対象の文字列を指定したparseメソッドを呼び出します。
int num = int.parse(str);
parseメソッドを使えば、文字列をint型に変換することが出来ます。
エラー
parseメソッドは、「abc」などの数値に変換できない文字列でエラーを起こします。
エラーを対策したい場合は、tryParseメソッドもしくはparseメソッドの引数「onError」を使います。
//変換失敗でnullを返す
int num = int.tryParse(str);
//変換失敗で引数「onError」の戻り値を代わりに返す
int num2 = int.parse(str, onError: (value) => e)
tryParseメソッドは変換失敗時に「null」、parseメソッドの引数「onError」は変換失敗時にコールバック関数の戻り値を返します。
tryParseメソッドもしくはparseメソッドの引数「onError」を使えば、parseメソッドの変換失敗のエラーを対策することが出来ます。
使用例
void main() {
var text = "123";
int num = int.parse(text);
print(num); //123
//変換失敗のエラー対策
var text2 = "abc";
int? num2 = int.tryParse(text2);
int num3 = int.parse(text2, onError: (value) => 0);
print(num2); //null
print(num3); //0
}
コメント