【发布时间】:2013-07-30 05:50:57
【问题描述】:
我知道这是一个简单的问题,我知道如何做,我这里只需要性能,并且尽可能少的时间。
我得到的输入是
long l = 149;
我想将此数字设为 10,并在开始时添加额外的数字以使其成为 10 位数字。 以上数字应转换为,
0000000149.
同样,
1 -> 0000000001
13 -> 0000000013
888888 -> 0000888888
1。 我尝试使用循环,例如检查数字长度,将数字长度减去 10,然后添加零的个数作为我得到的减法结果。
2 已经创建了类似的数组
arr[0, 00, 000, 0000, 00000, 000000, 0000000, 00000000, 000000000, 0000000000];
我在这里做同样的事情,用 10 减去我的数字长度并得到 arr[numberLenth -10] + number
我得到了想要的结果。
我想确保检查是否有更好的解决方案,例如使用按位运算符来满足此类要求?
谢谢
【问题讨论】:
-
或者可能是这个 - stackoverflow.com/questions/4469717/…
-
您以哪种方式创建这些格式?如果是控制台,你总是可以只做 System.out.format("%10d", numberVariable);
-
谢谢...我得到了@Tichodroma 指向的链接的答案。
标签: java