在JAVA中将时间字段H:M转换为整数字段(分钟) [英] Convert time field H:M into integer field (minutes) in JAVA

查看:265
本文介绍了在JAVA中将时间字段H:M转换为整数字段(分钟)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

JTable包括时间字段,例如01:50。我需要将此值读入整数变量。为此,我想将时间转换为分钟。例如,01:50应转换为110.

The JTable includes the time field, e.g. "01:50". I need to read this value into the integer variable. For this I´d like to convert time into minutes. For instance "01:50" should be converted into 110.

要解决此任务,首先我将时间值保存为字符串。

To solve the task, first I saved the time value as a String.

String minutS = tableModel.getValueAt(1,1).toString();

其次,我将处理此String并提取符号<$之前和之后的整数C $ C>:。最后,我将计算总分钟数。
这个解决方案有效吗?也许,有可能用日历代替它或者像这样吗?

Secondly, I´m going to process this String and extract the integers before and after the symbol :. Finally I will calculate the total minutes. Is this solution efficient? Perhaps, it´s possible to substitute it with Calendar or sth like this?

推荐答案

我不认为使用日历/日期对于这种情况,将比直接解析更好。如果你的时间格式确实是H:m,那么我认为你不需要比这更复杂的东西:

I don't think using Calendar/Date will be better than straightforward parse for this case. If your time format is indeed H:m, then I don't think you need anything more complex than this:

/**
 * @param s H:m timestamp, i.e. [Hour in day (0-23)]:[Minute in hour (0-59)]
 * @return total minutes after 00:00
 */
private static int toMins(String s) {
    String[] hourMin = s.split(":");
    int hour = Integer.parseInt(hourMin[0]);
    int mins = Integer.parseInt(hourMin[1]);
    int hoursInMins = hour * 60;
    return hoursInMins + mins;
}

这篇关于在JAVA中将时间字段H:M转换为整数字段(分钟)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆