[Dart]文字列を数値に変換するには?

Dart

どうも、ちょげ(@chogetarou)です。

Dartで文字列を数値に変換する方法を紹介します。

スポンサーリンク

方法

コンピューター, ノート, オフィス, コード, プログラミング, プログラム

文字列を数値に変換するには、parseメソッドを使います。

具体的には、intもしくはdoubleからparseメソッドを呼び出し、parseメソッドの引数に変換する文字列を指定します。

var num = int.parse("・・・") //int型に変換

var doubleNum = double.parse("・・・") //double型に変換

parseメソッドを使えば、文字列を数値に変換することが出来ます。

「”abc”」など数値として認識できない文字列を変換しようとすると、変換を失敗しエラーが起こります。

もし、エラーを対策したい場合は、tryParseメソッドもしくはparseメソッドの引数「onError」を使います。

//変換を失敗したら「null」を返す
var numTry = int.tryParse(str);

//変換を失敗したら引数「onError」の戻り値を返す
var num = int.parse(str, onError: (value) => 0);

使用例

void main() {
  var text1 = "1030";  
  var text2 = "10.30";
  
  int num1 = int.parse(text1);
  double num2 = double.parse(text2);
      
  print(num1); //1030
  print(num2); //10.3
  
  
  //変換失敗時のエラーを対策
  var text3 = "abc100";
  
  var num3 = int.tryParse(text3); //失敗したら「null」を返す
  var num4 = int.parse(text3, onError: (value) => 0); //失敗したら「0」を返す
  
  print(num3); //null
  print(num4); //0
}

コメント

タイトルとURLをコピーしました