내 프로그램은 현재 날짜를 취한 다음 루프에서 해당 날짜에 일주일을 추가하고 새 날짜를 인쇄합니다. 뭔가 같이 :Java Calendar.add는 잘못된 연도를 나타냅니다.
Calendar cal = Calendar.getInstance();
for (int i=0; i < 52; i++) {
cal.add(Calendar.DATE, 7);
// print date out
}
추가 방법은 내가이되는 올해는 4/16의 오늘 날짜를 사용 2012 그래서 2013 년
에 점프 지적 년 12 월 (30)에 도달 할 때까지 그것을 기대하는 방식으로 작동
this - cal.add(Calendar.DATE, 38*7);
yields- "date:1/7/2013"
this - cal.add(Calendar.DATE, 37*7);
yields- "date:12/31/2013"
this - cal.add(Calendar.DATE, 37*7-1);
yields- "date:12/30/2013"
this - cal.add(Calendar.DATE, 37*7-2);
yields- "date:12/29/2012"
그래서 내가 년 12 월 30 12 월 31 일까지 최대 교정 것을 알 수 있으며 월에 돌아 오면 그때 다시 저절로 해결 :/2012, 나는 몇 가지 다른 입력을 테스트했다. 이 일을하는 이유가 있습니까? 그것은 2012 윤년 인 또는 내가 뭔가를해야합니다 추가 방법을
'getInstance()'메소드는 무엇을합니까? – biziclop
아니요, 다른 뭔가 잘못되었습니다. 저에게'cal.add (Calendar.DATE, 37 * 7)'결과는'Mon Dec 31 22:29:04 SAST 2012'입니다. – Jesse
북미 지역의 OpenJDK 6에 관한 내용이 없습니다. JDK는 무엇입니까? 장소? 또한, 날짜를 인쇄하는 데 사용하는 실제 코드는 무엇입니까? – Affe