2011-08-30 5 views

답변

24

Calendar.get()은 문자열을 반환하지 않으므로 게시 한 코드는 컴파일되지 않습니다. 또한 캘린더는 변경 가능하다는 점에 유의해야합니다. add을 호출 할 때마다 새 캘린더를 반환하는 것과는 다릅니다. 따라서 다른 값에 대한 별도의 변수를 원할 때마다 인스턴스를 만들어야합니다. 예를 들어 : 모든 가능한에, 난 강력하게 을 거라고 경우

Calendar now = Calendar.getInstance(); 

Calendar tmp = (Calendar) now.clone(); 
tmp.add(Calendar.HOUR_OF_DAY, 1); 
tmp.add(Calendar.MINUTE, 10); 
Calendar nowPlus70Minutes = tmp; 

tmp = (Calendar) now.clone(); 
tmp.add(Calendar.MINUTE, -10); 
Calendar nowMinus10Minutes = tmp; 

는 대신 달력/일의 Joda Time를 사용하는 것이 좋습니다 - 그것은 까지 우수한 API입니다. 그러나 포함 된 시간대를 다듬어서 시작하는 것이 빠르며 apk에서 오버 헤드가 적습니다.

+0

은 완벽하게 저를 도왔가, 감사합니다 –

4

System.currentTimeMillis() + INTERVAL으로 전화하면됩니다. INTERVAL 예를 들면 간격 (밀리 초)입니다 (

:

public static final long INTERVAL = 1000 * 60 * 60 * 24; // 1 day 
+1

이 또한 올바른 접근이다 주셔서 감사합니다. – jackal

관련 문제