大数到短Java Android

时间:2017-03-17 10:11:34

标签: java android

  • 我有一个喜欢和分享的引用应用程序 功能
  • 我用正常的方式显示喜欢和分享号码 100,1050等现在我希望显示号码像1.1K ...... 1.2M等。
  • 我已经搜索了很多但没有找到任何正确的方法。 如果有人在这里可以给我任何参考或想法,请告诉我 相同。
  • 如果它是三位数,我不想要更改号码。 我想转换它 如果数字是1000-1049而不是1K,如果数字是这样的话 1050-1100比它显示1.1K等等。

    如果您有任何想法,请告诉我。感谢

1 个答案:

答案 0 :(得分:0)

前一段时间有同样的任务。找到了一些不错的代码片段,但没有链接了。

public static void main (String[]args) {
    for (long num : new long[] { 999,1000,1049,1050,1100,5432, 19999, 654321, 7000000, 7654321, 80010000, 88888888, 9999999 })
        System.out.println(formatNumber(num));
}  

public static String formatNumber(long count) {
    if (count < 1000) return "" + count;
    int exp = (int) (Math.log(count) / Math.log(1000));
    return String.format("%.1f %c", count / Math.pow(1000, exp),"kMGTPE".charAt(exp-1));
}