22
如何在Java中将1200格式化为1.2k
我想用java将以下数字格式化为它们旁边的数字: 1000 to 1k 5821 to 5.8k 10500 to 10k 101800 to 101k 2000000 to 2m 7800000 to 7.8m 92150000 to 92m 123200000 to 123m 右边的数字将是long或整数,而左边的数字将是字符串。我应该如何处理。我已经为此做了很少的算法,但是我认为可能已经发明了一些更好的方法,并且如果我开始处理数十亿和数万亿,则不需要额外的测试:) 其他要求: 格式最多可包含4个字符 以上意味着1.1k是可以的11.2k不是。同样对于7.8m可以19.1m不可以。小数点前只能有一位数字。小数点前两位表示小数点后两位。 不需要四舍五入。(带有k和m附加显示的数字更多地是模拟量规,而不是精确的逻辑术语。因此,舍入主要由于变量的性质而无关紧要,即使在查看缓存的结果时,舍入也不会增加或减少几位数。)