一、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