Метод parse
int parse(Разбирает source как, возможно, знаковое, целое числовое литерал и возвращает его значение.
source должно быть непустой последовательностью цифр в заданной системе счисления, необязательно с префиксом минус или плюс ('-' или '+').
radix должно быть в диапазоне от 2 до 36. Используемые цифры — это сначала десятичные цифры от 0 до 9, а затем буквы 'a'..'z' со значениями от 10 до 35. Также принимаются прописные буквы с теми же значениями, что и строчные.
Если radix не указан, он по умолчанию равен 10. В этом случае source цифры также могут начинаться с 0x, в этом случае число интерпретируется как шестнадцатеричное литерал, что фактически означает, что 0x игнорируется, а основание вместо этого устанавливается в 16.
Для любого целого числа n и основания r, гарантируется, что n == int.parse(n.toRadixString(r), radix: r).
Если source не является допустимым целым числовым литералом, необязательно с префиксом знака, вызывается onError, с source в качестве аргумента, и возвращаемое значение используется вместо этого. Если onError не предоставлен, выбрасывается исключение FormatException.
Обработчик onError может быть выбран для возвращения null. Это предпочтительнее, чем выбрасывание и немедленное перехват исключения FormatException. Пример:
var value = int.parse(text, onError: (source) => null); if (value == null) ... handle the problem
Функция onError вызывается только если source является строкой String. Она не вызывается, если source является, например, null.
Источник
external static int parse(String source,
{int radix, int onError(String source)});
© 2012 the Dart project authors
Licensed under the Creative Commons Attribution-ShareAlike License v4.0.
https://api.dartlang.org/stable/1.24.3/dart-core/int/parse.html