Me gustaría analizar cadenas como "1" o "32.23" en números enteros y dobles. ¿Cómo puedo hacer esto con Dart?
105
Puede analizar una cadena en un número entero con int.parse()
. Por ejemplo:
var myInt = int.parse('12345');
assert(myInt is int);
print(myInt); // 12345
Tenga en cuenta que int.parse()
acepta 0x
cadenas con prefijo. De lo contrario, la entrada se trata como base 10.
Puede analizar una cadena en un doble con double.parse()
. Por ejemplo:
var myDouble = double.parse('123.45');
assert(myDouble is double);
print(myDouble); // 123.45
parse()
lanzará FormatException si no puede analizar la entrada.
En Dart 2 int.tryParse está disponible.
Devuelve nulo para entradas no válidas en lugar de lanzar. Puedes usarlo así:
fuente
Según dardo 2.6
El
onError
parámetro opcional deint.parse
está obsoleto . Por lo tanto, debería usarint.tryParse
en su lugar.Nota : Lo mismo se aplica a
double.parse
. Por lo tanto, utilicedouble.tryParse
en su lugar.La diferencia es que
int.tryParse
regresanull
si la cadena de origen no es válida.Entonces, en su caso, debería verse así:
fuente
fuente
int.parse()
ydouble.parse()
puede arrojar un error cuando no pudo analizar la cadena. Desarrolle su respuesta para que otros puedan aprender y entender mejor el dardo.puede analizar la cadena con
int.parse('your string value');
.Ejemplo:-
int num = int.parse('110011'); print(num); \\ prints 110011 ;
fuente