2011-05-18 5 views
2

Pourquoi cela continue-t-il à renvoyer 0?Méthode du calendrier Java

Calendar calendar = Calendar.getInstance(); 
calendar.get(Calendar.HOUR_OF_DAY)? 
+0

Par hasard est-il entre 00h00 et 00h59 dans votre fuseau horaire? –

+0

La valeur de HOUR_OF_DAY est comprise entre 0 et 24. Peut-être que lorsque vous exécutez ce code, le temps équivalent est 0. Avez-vous essayé de l'exécuter par heure? – exception01

Répondre

3

Calendar.HOUR_OF_DAY sera 0 lorsque l'heure du jour se situe entre minuit et une heure du matin. Il y a donc des chances, que ce soit dans cet intervalle de temps où que vous soyez, ou que votre émulateur Android soit configuré de telle sorte qu'il pense que vous êtes dans cet intervalle de temps.

Si ce n'est pas le cas, vous pouvez essayer de régler l'heure à une valeur arbitraire, puis la réessayer pour vérifier qu'elle fonctionne. Pour ce faire, essayez:

Calendar cal = Calendar.getInstance(); 
cal.set(Calendar.HOUR_OF_DAY, 5); 
+0

merci chien broham – ryan

0

Idéalement, il ne devrait pas,

Essayez cette

Calendar calendar = Calendar.getInstance(); 
System.out.println(calendar.get(Calendar.YEAR)); 
System.out.println(calendar.get(Calendar.HOUR)); 
System.out.println(calendar.get(Calendar.HOUR_OF_DAY)); 
System.out.println(calendar.get(Calendar.MINUTE)); 

Rien différent de ce que vous avez à moins que je suis en train d'imprimer année, heure, heure de jour, minute.

+0

hrmm ... c'est peut-être mon émulateur Android? Mais cela semble fonctionner correctement: calendar.get (Calendar.DAY_OF_WEEK); – ryan