perché il seguente restituisce 0?Perché Calendar.get (Calendar.MONTH) restituisce 0?
int currMonth = c.get(Calendar.MONTH);
perché il seguente restituisce 0?Perché Calendar.get (Calendar.MONTH) restituisce 0?
int currMonth = c.get(Calendar.MONTH);
L'ultimo dipende dal numero di mesi dell'anno .... –
Che è abbastanza statico. –
@Byers: E se "0" significa "Gennaio" o "Abib" o "Zhengyue" dipende da quale calendario stai usando. Ma penso che sia giusto presupporre che stia parlando del calendario gregoriano. Quale ultimo controllo ho avuto 12 mesi in un anno da quando è stato inventato nel 1582. Sono tutto per mantenere flessibili i sistemi, ma nella lista delle cose che potrebbero cambiare, il numero di mesi in un anno di calendario è molto più basso. – Jay
oops! scusa, l'ho capito. Indicizzazione naturale ovviamente !!!
Non si usano i numeri per mesi ma si dovrebbero usare le costanti del calendario come Calendar.JANUARY (che come stai scoprendo è 0). L'API mostra questo. –
Le costanti del calendario non hanno alcun senso se stai cercando di ottenere il numero del mese. In tal caso, è sufficiente ricordare di incrementare il valore di ritorno. Lo trovo piuttosto fastidioso, soprattutto dal momento che i giorni vengono restituiti a partire da 1 ... –
sì che è un po 'strano ... – dr85
Non indicizzazione naturale, ma il pensiero innaturale di persone sole. :-)
Mi chiedo: dovrei votare questo o segnalare come offensivo? Non andrò né a –
aggiungerò una faccina :-) –
No, non la penso così. Perché gennaio dovrebbe essere rappresentato ** numericamente ** come 1 (non sto parlando di testo)? Certo, la rappresentazione delle stringhe può essere 1 in molti il modo in cui molte culture scrivono le date, ma questo è gestito dai formattatori di date, non da Calendar. 1+ rappresentante per lo smiley però. –
qual è il tipo di 'c'? –
@ Mark E: [Calendario] (http://download.oracle.com/javase/6/docs/api/java/util/Calendar.html) –