假設當前日期爲5月28日。如果我將以下命令調用以使輸出變爲在Android中向日歷添加一天失敗31日
cal.add(Calendar.DATE, 1); // Day = 29
cal.add(Calendar.DATE, 1); // Day = 30
cal.add(Calendar.DATE, 1); // Day = 31
cal.add(Calendar.DATE, 1); // Day = 31
cal.add(Calendar.DATE, -1); // Day = 29
爲什麼這不是跳進下個月。爲什麼它卡在31日。 (但實際上,當你減1它跳到29.
卷只有「滾動」你改變的領域,不改變大的領域 – IncrediApp 2012-08-09 11:19:07
http://docs.oracle.com/ javase/1.4.2/docs/api/java/util/Calendar.html#roll(int,int) – IncrediApp 2012-08-09 11:20:54
@IncrediApp似乎是對的,滾動的解釋首先向另一個方向建議_「指定的增量或減量字段並在超出當前日期的最大值或最小值時包裝字段的值,其他字段將根據需要進行調整以保持一致的日期。「_ – Kostronor 2012-08-09 11:24:35