将数字转换为相对字符串,如“1.498万亿”或“2.147亿”

时间:2013-02-05 02:36:32

标签: java

将长格式转换为十进制格式后跟地名的最有效方法是什么,例如

1,498,000,000,000 - 1.498万亿

2,147,000,000 - 2.147亿

操作必须尽可能快地执行,谢谢=)

1 个答案:

答案 0 :(得分:0)

最有效的方法(从运行时性能角度来看)就是从头开始编写自定义格式化程序,花几天时间,测试它,分析它并优化它。

然而,从不浪费宝贵的软件开发人员时间的角度来看,最有效的方法是第一部分的现有格式化程序类之一,以及一些简单的自定义代码来完成最后一部分的缩放。然后,您分析整个应用程序,并确定优化格式是否真的值得。 (我的赌注是它不会。)


对于“相对字符串”部分,我只是将其作为一系列if / else测试来实现,以选择比例因子和单位(即千万,百万,十亿,万亿) 。然后将输入数除以比例因子,转换为double并使用标准API在固定宽度字段中进行格式化。

简单易懂......您现在可以继续使用应用程序的下一部分。

相关问题