How do you round a double in Dart to a given degree of precision AFTER the decimal point?

前端 未结 12 1075
[愿得一人]
[愿得一人] 2020-12-08 03:46

Given a double, I want to round it to a given number of points of precision after the decimal point, similar to PHP\'s round() function.

The closest thing I

12条回答
  •  孤城傲影
    2020-12-08 04:15

    The modified answer of @andyw using Dart Extension methods:

    extension Precision on double {
        double toPrecision(int fractionDigits) {
            double mod = pow(10, fractionDigits.toDouble());
            return ((this * mod).round().toDouble() / mod);
        }
    }
    

    Usage:

    var latitude = 1.123456;
    var latitudeWithFixedPrecision = latitude.toPrecision(3); // Outputs: 1.123
    

提交回复
热议问题