在12小时制与军事时间之间转换

时间:2018-11-20 00:14:55

标签: java converters

我目前正在尝试编写一个方法,该方法采用“ 1pm”之类的字符串并将其转换为军事时间-> 13

现在,我有以下内容,并且无法正常工作。任何提示将不胜感激。

/ **      *使用更人性化的设置约会时间      *字符串。      * @param newHour此约会的新时间,使用      *上午/下午的名称,例如“ 9am”或“ 5pm”。      * /

public void setTime(String newHour)
{
    String day = newHour.substring(newHour.length() - 2);
    String dig = newHour.substring(2, newHour.length() - 2);

    if (dig.equals("12"))
    {
        dig = "0";
    }
    if (day.equals("am"))
    {
        hour = Integer.parseInt(dig);
    }
    else 
    {
        hour = Integer.parseInt(dig) + 12;
    }
}

1 个答案:

答案 0 :(得分:0)

您的“ dig”字符串是错误的。其起始索引应为0。

String dig = newHour.substring(0, newHour.length() - 2);