public class MyCalendar {
GregorianCalendar greg = new GregorianCalendar();
String[] month = {"January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"};
String[] day = {"Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"};
public void printMonth(int d, int m, int y) {
GregorianCalendar greg= new GregorianCalendar(greg.get(Calendar.YEAR),
greg.get(Calendar.MONTH), 1);
System.out.println(month[greg.get(Calendar.MONTH)]);
System.out.println(greg.get(Calendar.FRIDAY));
System.out.println(greg.get(Calendar.SATURDAY));
}
У меня возникли проблемы с выяснением, почему greg.get (Calendar ._____) дает мне неожиданные значения.Григорианский календарь возвращает странные значения?
YEAR, MONTH, DATE all give me correct values: 2015, 9, 6
FRIDAY returns 279
SATURDAY returns 3
SUNDAY returns 2015
TUESDAY returns 41
Может ли кто-нибудь объяснить мне, почему я получаю эти цифры? Я пытался узнать, как к дате всех суббот месяца, и подумал, что greg.get(Calendar.SATURDAY)
может быть полезен в этом.
Это не так, как вы предполагаете использовать 'get', предположим, например, использовать значение« Calendar.DATE »для значения даты или« Calendar.YEAR »для значения года. Поэтому использование 'Calendar.DAY_OF_WEEK' вернет значение, которое можно сопоставить с' Calendar.MONDAY' через 'Calendar.SUNDAY' – MadProgrammer
О, и если вы используете Java 8, используйте новый API времени или просто используйте Joda Time – MadProgrammer