Spodziewam się podwójnej wartości od odpowiedzi, ale czasami wartość int pochodzi z odpowiedzi. Jak sobie z tym poradzić?
double rate = jsonResponse['rate']; //rate may be int from response
return rate.round();
2 odpowiedzi
Jest metoda toDouble
zarówno dla klasy {x1}}, jak i double
, ponieważ oboje dziedziczą, że metoda z klasy num
, gdzie ta metoda jest zdefiniowana. Więc możesz zrobić:
double rate = jsonResponse['rate'].toDouble();
return rate.round();
Aby zagwarantować, że nigdy nie doświadczysz problemu.
W takim przypadku możesz użyć Num Class . Jako dokumentacja stanowi:
Liczba całkowita lub liczba zmiennoprzecinkowa.
W razie potrzeby zawiera metodę round
, a także toDouble
i toInt
.
Więc w twoim przykładzie możesz użyć:
num rate = jsonResponse['rate']; //rate may be int from response
return rate.round();
Nowe pytania
dart
Dart jest opartym na klasach, statycznie (i silnie) językiem programowania do tworzenia aplikacji internetowych i mobilnych. Dart kompiluje się do nowoczesnego JavaScript, aby działać w przeglądarce i kompiluje do kodu natywnego, aby działać na platformach mobilnych, takich jak Android i iOS. Dart działa również w wierszu poleceń do obsługi skryptów i aplikacji po stronie serwera.