我有一个 float 的特定任务所需的估计时间(以分钟为单位)。如何将其以 HH:mm:ss
格式放入 JFormattedTextField 中?
最佳答案
对于 float < 1440,您可以使用 Calendar
和 DateFormat
来解决。
float minutes = 100.5f; // 1:40:30
Calendar c = Calendar.getInstance();
c.set(Calendar.HOUR_OF_DAY, 0);
c.set(Calendar.MINUTE, 0);
c.set(Calendar.SECOND, 0);
c.add(Calendar.MINUTE, (int) minutes);
c.add(Calendar.SECOND, (int) ((minutes % (int) minutes) * 60));
final Date date = c.getTime();
Format timeFormat = new SimpleDateFormat("HH:mm:ss");
JFormattedTextField input = new JFormattedTextField(timeFormat);
input.setValue(date);
但请注意,如果您的 float 时间大于或等于 1440(24 小时),日历方法将仅前进一天,您将无法获得预期结果。
关于java - HH 中的 JTextField 时间 :mm:ss,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12667472/