| 123456789101112131415161718192021222324252627282930313233343536373839404142434445 |
- import 'dart:math';
- class NumberUtil {
- static String format(double n) {
- if (n >= 1000000000) {
- n /= 1000000000;
- return "${n.toStringAsFixed(2)}B";
- } else if (n >= 1000000) {
- n /= 1000000;
- return "${n.toStringAsFixed(2)}M";
- } else if (n >= 10000) {
- n /= 1000;
- return "${n.toStringAsFixed(2)}K";
- } else {
- return n.toStringAsFixed(4);
- }
- }
- static int getDecimalLength(double b) {
- String s = b.toString();
- int dotIndex = s.indexOf(".");
- if (dotIndex < 0) {
- return 0;
- } else {
- return s.length - dotIndex - 1;
- }
- }
- static int getMaxDecimalLength(double a, double b, double c, double d) {
- int result = max(getDecimalLength(a), getDecimalLength(b));
- result = max(result, getDecimalLength(c));
- result = max(result, getDecimalLength(d));
- return result;
- }
- static bool checkNotNullOrZero(double? a) {
- if (a == null || a == 0) {
- return false;
- } else if (a.abs().toStringAsFixed(4) == "0.0000") {
- return false;
- } else {
- return true;
- }
- }
- }
|