0

你能问我一个问题吗?我有几个 double 接收计算值,但想知道如何对收到的这些值进行分馏?在这种情况下是:13.232 到 13.23 ..

代码:

 Future calculate() {
double precototal1 =
    double.parse(_precoCtrl.text.replaceAll(new RegExp(r'[,.]'), '')) * 12;
double precototal2 =
    double.parse(_precoCtrl1.text.replaceAll(new RegExp(r'[,.]'), '')) * 12;
double unidademl1 =
    double.parse(_unitCtrl.text.replaceAll(new RegExp(r'[,.]'), ''));
double unidademl2 =
    double.parse(_unitCtrl1.text.replaceAll(new RegExp(r'[,.]'), ''));

double difvalor = 0;
double latas = 0;
double litros = 0;
double totlitros = 0;
double diflitros = 0;



setState(() {
  _completed = false;
  _busy = true;
});

return new Future.delayed(const Duration(seconds: 1), () {
  setState(
    () {
      print(formatter.format(precototal2));
      if (precototal1 > precototal2) {
        difvalor = precototal1 - precototal2;
        latas = (difvalor / precototal2);
        litros = (latas * unidademl2);
        totlitros = litros + unidademl2;
        diflitros = (totlitros - unidademl1);
      } else {
        difvalor = (precototal2 - precototal1);
        latas = (difvalor + precototal1);
        totlitros = litros + unidademl1;
        litros = (latas / unidademl1);
        diflitros = (unidademl2 - totlitros);
      }
4

1 回答 1

0

使用 toStringAsFixed 方法。例子:

double value = 15.2235;

String fmtValue = value.toStringAsFixed(2);
于 2020-01-15T22:11:06.040 回答