【发布时间】:2019-11-21 22:08:33
【问题描述】:
我想取一个双精度数。
Double x = 5.56753;
x.toStringAsFixed(2);
当我输入这个时,它给出了 5.57000。 但我想得到5.57。我如何获得它?
【问题讨论】:
标签: dart
我想取一个双精度数。
Double x = 5.56753;
x.toStringAsFixed(2);
当我输入这个时,它给出了 5.57000。 但我想得到5.57。我如何获得它?
【问题讨论】:
标签: dart
有num类包含函数round():
double numberToRound = 5.56753;
print(numberToRound.round());
//prints 6
如果你想要小数
double n = num.parse(numberToRound.toStringAsFixed(2));
print(n);
//prints 5.57
【讨论】:
四舍五入结帐:https://api.dartlang.org/stable/2.4.0/dart-core/double/round.html
四舍五入不适用于您的情况,因为文档说:
integer。所以它会给出6 而不是5.57。
您的解决方案:
double x = 5.56753;
String roundedX = x.toStringAsFixed(2);
print(roundedX);
【讨论】: