我想用 Android 将以下数字格式化为它们旁边的数字:
1000 到 1k
5821 到 5.8k
2000000 至 2m
7800000 至 7.8m
最佳答案
功能
public String prettyCount(Number number) {
char[] suffix = {' ', 'k', 'M', 'B', 'T', 'P', 'E'};
long numValue = number.longValue();
int value = (int) Math.floor(Math.log10(numValue));
int base = value / 3;
if (value >= 3 && base < suffix.length) {
return new DecimalFormat("#0.0").format(numValue / Math.pow(10, base * 3)) + suffix[base];
} else {
return new DecimalFormat("#,##0").format(numValue);
}
}
使用
prettyCount(789); Output: 789
prettyCount(5821); Output: 5.8k
prettyCount(101808); Output: 101.8k
prettyCount(7898562); Output: 7.9M
关于android - 如何在 Android Studio 中将 1200 格式化为 1.2k,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41859525/