如何创建将大数转换为带有字符的缩短数的函数Dart?
喜欢
1000 => 1K
10000 => 10K
1000000 => 1M
10000000 => 10M
1000000000 => 1B
Run Code Online (Sandbox Code Playgroud)
Dart中有一个内置函数可以使用,而且很简单:
var f = NumberFormat.compact(locale: "en_IN");
print(f.format(12345));
Run Code Online (Sandbox Code Playgroud)
使其成为一种方法:
getShortForm(var number) {
var f = NumberFormat.compact(locale: "en_US");
return f.format(number);
}
Run Code Online (Sandbox Code Playgroud)
为此,导入
import 'package:intl/intl.dart';
Run Code Online (Sandbox Code Playgroud)
有关更多信息,请参阅此文档https://pub.dev/documentation/intl/latest/intl/NumberFormat-class.html
如果您正在寻找困难的方法:
getShortForm(int number) {
var shortForm = "";
if (number != null) {
if (number < 1000) {
shortForm = number.toString();
} else if (number >= 1000 && number < 1000000) {
shortForm = (number / 1000).toStringAsFixed(1) + "K";
} else if (number >= 1000000 && number < 1000000000) {
shortForm = (number / 1000000).toStringAsFixed(1) + "M";
} else if (number >= 1000000000 && number < 1000000000000) {
shortForm = (number / 1000000000).toStringAsFixed(1) + "B";
}
}
return shortForm;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2382 次 |
| 最近记录: |