2016-08-25 65 views
0

我有存储在长变量中的小时,分​​钟和秒。假装这些当前值:Java格式化长

long seconds = 30; 
long minutes = 0 
long hours = 0; 

当我将其换算成字符串,并打印出来:

Long.toString(Hours)+":"+Long.toString(Minutes)+":"+Long.toString(Seconds) 

输出类似于

0:0:30

我想要:

00:00:30

我假定这应该是简单的,但我不能工作了..

+2

'System.out.printf(“%02d:%02d:%02d”,小时,分钟,秒)''。或者'String.format',或者一些变体。 –

+0

你可以在这里找到一些例子:[添加前导零](http://stackoverflow.com/questions/275711/add-leading-zeroes-to-number-in-java) – Soengend

+0

这是一个很好的方式,通过点击标记解决方案在答案旁边的downvote灰色三角下的灰色滴答声上。 – xenteros

回答

-1

使用String.format("%02d", your number)

更多信息读取javadoc

0

尝试以下操作:

System.out.printf("%02d:%02d:%02d", hours, minutes, seconds); 

如果您想将String存储在变量中,请执行以下操作:

String s = String.format("%02d:%02d:%02d", hours, minutes, seconds);