Flutter 小数取整的多种实现&保留小数点后 n 位

Flutter 小数取整的多种实现&保留小数点后 n 位


在 Flutter 中,如果我们在处理小数,想要舍弃小数部分,或者想要保留小数点后面几位,怎么做呢?

舍弃小数部分(取整)

首先我们来看如何只保留整数位,这里有很多方法可以实现:

double price = 100 / 3;

//舍弃当前变量的小数部分,结果为 33。返回值为 int 类型。
price.truncate();
//舍弃当前变量的小数部分,浮点数形式表示,结果为 33.0。返回值为 double。
price.truncateToDouble();
//舍弃当前变量的小数部分,结果为 33。返回值为 int 类型。
price.toInt();
//小数部分向上进位,结果为 34。返回值为 int 类型。
price.ceil();
//小数部分向上进位,结果为 34.0。返回值为 double。
price.ceilToDouble();
//当前变量四舍五入后取整,结果为 33。返回值为 int 类型。
price.round();
//当前变量四舍五入后取整,结果为 33.0。返回值为 double 类型。
price.roundToDouble();

根据自己的需求,是否需要四舍五入等,选择一个合适的方法即可。

保留小数点后 n 位

如果我们想要控制浮点数的精度,想要保留小数点后几位数字,怎么实现?

最简单的是使用 toStringAsFixed() 方法:

double price = 100 / 3;
//保留小数点后2位数,并返回字符串:33.33。
price.toStringAsFixed(2);
//保留小数点后5位数,并返回一个字符串 33.33333。
price.toStringAsFixed(5);

注意,toStringAsFixed() 方法会进行四舍五入。

或者也可以使用第三方类库,或者自己写一个函数实现都可以。当然,大多数情况下 toStringAsFixed() 方法都可以满足我们的需求了。


**PS:点我!点我!点我!…… --> 《Flutter 开发》
**PS:点我!点我!点我!…… --> 《Flutter 开发》
**PS:更多,更多内容,请查看 --> 《Flutter 开发》

猜你喜欢

转载自blog.csdn.net/u011578734/article/details/112251314
今日推荐