【发布时间】:2012-07-25 08:20:06
【问题描述】:
我有一个用户 25|35|40 输入的字符串。我已将100=25+35+40 以下的任何数字格式化为这种格式。例如,
5 --> 05|00|00
30 --> 25|05|00
65 --> 25|35|05
应保持 25|35|40 的顺序。这类似于日期格式 MM:dd:yyyy,因为我们知道月份不能超过 12 并且日期不能超过 31。但是这里可以出现任何值。其位置的值确定最大值。另一个例子,
如果用户字符串是40|110|2500|350
5 --> 05|000|0000|000
100 --> 40|060|0000|000
450 --> 40|110|0300|000
2900 --> 40|110|2500|250
如果数量超过3000=40+110+2500+350的总数,我可以将其设为number -= 3000。
目前我正在尝试使用自定义代码对其进行格式化,该代码将检查数字并创建所需的输出字符串。 java中有没有内置的格式API?
【问题讨论】:
-
你能解释一下你的格式吗?也许最后一行应该是 riead
35|25|05? -
似乎是一个非常具体的商业案例......看不到任何 API 为 % 和 - 并且字符串连接足以完成这项工作。为什么要这样格式化,说不定能帮我们找个工具呢。
-
您能否详细说明您是如何从 30/65 得到这三个数字的?
-
顺便说一句,您可以创建自己的
NumberFormat来将您的业务封装在此 API 中。
标签: java format number-formatting