Calendar cal = Calendar.getInstance();
        cal.set(1980, 11, 1, 1, 1, 1);        SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
        System.out.println(df.format(cal.getTime()) + "  Milliseconds: " + cal.getTimeInMillis());

解决方案 »

  1.   

    因为你的set方法只设置了cal对象的年月日时分秒数值,没设置微秒,而你的getTimeInMillis是得到时间的微秒表示,每次当然不一样了。
      

  2.   

    set(int year, int month, int day, int hour, int minute, int second) 但没有set(int year, int month, int day, int hour, int minute, int second, int millisecond) 前面 set(int,int,int,int,int,int) 方法不会自动将 MilliSecond 清为 0。
    所以MilliSecond不固定..
      

  3.   

    因为你的set方法只设置了cal对象的年月日时分秒数值,没设置微秒,而你的getTimeInMillis是得到时间的微秒表示,每次当然不一样了。
      

  4.   

    1楼误人子弟,getTimeInMillis是得到时间的毫秒表示,而不是微秒。