您的位置:

Flutter 保留两位小数

一、Flutter 中的数字处理

在 Flutter 中,数字通常用于计算和统计的目的。在处理数字的过程中,我们可能需要保留一定的小数位数以避免精度损失。Flutter 提供了许多方法来处理数字,并且支持各种数据类型,例如 int、double 等。

在 Flutter 中,有两种基本的数据类型用于表示数字:

 int numValue = 100;
 double doubleValue = 100.00;

其中,int 类型只能表示整数,而 double 类型可以表示浮点数。

在处理数字时,我们可以使用以下方法:

1. toFixed()

toFixed() 方法可以使用指定位数(例如 2)来格式化数字。例如:

double numValue = 123.456789;
String formattedNum = numValue.toStringAsFixed(2); // 小数点后面保留 2 位
print(formattedNum); // 输出 123.46

该方法会将数字四舍五入到指定的小数位数。

2. truncateToDouble()

truncateToDouble() 方法可以使用指定的小数位数(例如 2)截取数字的小数部分。例如:

double numValue = 123.456789;
double truncatedValue = numValue.truncateToDouble();
String formattedNum = truncatedValue.toStringAsFixed(2); // 小数点后面保留 2 位
print(formattedNum); // 输出 123.45

这个方法不会改变原始的数字,而只是返回一个新的数字。

二、Flutter 中的小数处理

在 Flutter 中,如果需要对小数进行取整或格式化,可以使用以下方法:

1. round()

round() 方法可以四舍五入到最接近的整数。例如:

double numValue = 123.5678;
int roundedValue = numValue.round();
print(roundedValue); // 输出 124

该方法会将数字四舍五入到最接近的整数。

2. ceil()

ceil() 方法向上取整,例如:

double numValue = 123.5678;
int ceilValue = numValue.ceil();
print(ceilValue); // 输出 124

该方法始终返回最接近数字的上限。

3. floor()

floor() 方法向下取整,例如:

double numValue = 123.5678;
int floorValue = numValue.floor();
print(floorValue); // 输出 123

该方法返回最接近数字的下限。

三、完整示例代码

double numValue = 123.456789;

String formattedNum = numValue.toStringAsFixed(2);
print(formattedNum); // 输出 123.46

double truncatedValue = numValue.truncateToDouble();
String formattedTruncatedValue = truncatedValue.toStringAsFixed(2);
print(formattedTruncatedValue); // 输出 123.45

double roundValue = 123.5678;
int roundedValue = roundValue.round();
print(roundedValue); // 输出 124

double ceilValue = 123.5678;
int ceilNum = ceilValue.ceil();
print(ceilNum); // 输出 124

double floorValue = 123.5678;
int floorNum = floorValue.floor();
print(floorNum); // 输出 123