Calendar 的 set() 时间相差十二小时

解决方案 »

  1.   

    public class test
    {
    public static void main(String[] args)
    {
    Calendar cal = Calendar.getInstance();
    System.out.println("现在时间:" + cal.getTime());
    String time = "01:00:00";// 预定时间:
    String[] str = time.split(":");
    if (str.length > 0)
    {
    cal.set(Calendar.HOUR, Integer.parseInt(str[0]));
    }
    if (str.length > 1)
    {
    cal.set(Calendar.MINUTE, Integer.parseInt(str[1]));
    }
    if (str.length > 2)
    {
    cal.set(Calendar.SECOND, Integer.parseInt(str[2]));
    }
    System.out.println("预定时间:" + cal.getTime());
    }
    }
    把13点改为1点,看一下源代码吧,源代码中说的很清楚,HOUR用于12小时制,中午和午夜用 0 表示,不用 12 表示;