我想乘以一个数字,然后将其四舍五入以除去任何小数位,但返回一个双精度数,而不是整数,因为这是我需要的。
我已经尝试过了:
double number = 84.5;
double coke = (number * 2.3).round()) as double;
这:
double coke = double.parse(number * 2.3).round());
但是我不能使它成为两倍,它只会引发错误。在这种情况下,该值为194.35
,我希望它为194.0
。
答案 0 :(得分:1)
double number = 84.5;
double answer = (number * 2.3).roundToDouble(); // 194.0
答案 1 :(得分:1)
CopsOnRoad's answer是最直接的方法,但是通常将int
转换为double
的方法是使用int.toDouble
:
double number = 84.5;
double coke = (number * 2.3).round().toDouble();
使用as double
不起作用,因为as
会将对象处理的类型更改为,但不更改基础对象。