Sta*_*ovy 1 java format time swing jlabel
我希望以HH:mm:ss不使用任何外部库的格式显示我的JLabel显示值.(标签将每秒更新)
例如,以下输入以秒为单位,所需的输出如下:
Seconds: Output:
--------------------------------------------------
long seconds = 0 00:00:00
long seconds = 5 00:00:05
long seconds = 500 00:08:20
long seconds = 5000 01:23:20
Note: the seconds value is of type long
Run Code Online (Sandbox Code Playgroud)
我知道通常只会进行以下转换以获得所需的数字:
long s = 5000; //total seconds
long hrs = (s / 3600) //hours
long mins = ((s%3600)/60) //minutes
long secs = (s%60) //seconds
Run Code Online (Sandbox Code Playgroud)
但是,这会在值上留下小数.也许有某种格式可以让我抛出不需要的小数.
我所遇到的选择是String.format(),SimpleDateFormat()或者连接字符串自己.
问题是,我将每秒更新一次这个JLabel,有时甚至可以计算相当于5-6天.
所以我正在寻找一个比我更有经验的人,并且知道解决这个问题的最有效方法.
如果我是你,我会使用SimpleDateFormat.
如果SDF对你来说太慢,请分析所有选项并选择最快的选项,然后重构其余代码,直到它足够快.
请记住,过早优化是所有邪恶的根源,并且在您分析代码并错过目标执行时间之后,您应该只进行任何优化.
| 归档时间: |
|
| 查看次数: |
1305 次 |
| 最近记录: |