Flutter如何保留两位小数
在Flutter中,如何将数字保留两位小数?比如我有一个浮点数123.456,想显示为123.45,应该用什么方法实现?希望得到具体的代码示例,谢谢!
2 回复
在Flutter中保留两位小数,可以通过以下几种方式实现:
1. 使用 toStringAsFixed() 方法
double number = 123.45678;
String result = number.toStringAsFixed(2); // "123.46"
2. 使用 NumberFormat 类(推荐用于显示)
import 'package:intl/intl.dart';
double number = 123.45678;
NumberFormat formatter = NumberFormat("#,##0.00", "en_US");
String result = formatter.format(number); // "123.46"
3. 在 Text 组件中直接格式化
Text(
'${number.toStringAsFixed(2)}',
style: TextStyle(fontSize: 16),
)
4. 自定义格式化函数
String formatDouble(double value) {
return value.toStringAsFixed(2);
}
// 使用
String result = formatDouble(123.45678); // "123.46"
使用建议:
toStringAsFixed():简单快速,适合基本需求NumberFormat:功能更强大,支持本地化、千分位分隔符等- 如果需要四舍五入计算,建议先进行数学运算再格式化
记得在使用 NumberFormat 时在 pubspec.yaml 中添加依赖:
dependencies:
intl: ^0.18.1


