Date: 2012feb26
Update: 2025sep25
Language: Java
Level: novice
Q. Java: Get values from the GregorianCalendar or Calendar class
A. Here is a full example:
import java.util.Calendar;
class Demo {
public static final void main(String []args) {
final Calendar mycal = Calendar.getInstance(); // The current date/time
int year = mycal.get(Calendar.YEAR); // eg 2035
int month1 = mycal.get(Calendar.MONTH) + 1; // Calendar.MONTH is zero-based
int jday = mycal.get(Calendar.DAY_OF_YEAR);
int mday = mycal.get(Calendar.DAY_OF_MONTH);
int wday = mycal.get(Calendar.DAY_OF_WEEK);
int hour24 = mycal.get(Calendar.HOUR_OF_DAY);
int hour12 = mycal.get(Calendar.HOUR);
int minute = mycal.get(Calendar.MINUTE);
int second = mycal.get(Calendar.SECOND);
int milli = mycal.get(Calendar.MILLISECOND);
System.out.println("year=" + year);
System.out.println("month1=" + month1);
System.out.println("jday=" + jday);
System.out.println("mday=" + mday);
System.out.println("wday=" + wday);
System.out.println("hour24=" + hour24);
System.out.println("hour12=" + hour12);
System.out.println("minute=" + minute);
System.out.println("second=" + second);
System.out.println("milli=" + milli);
}
}
Output (at one time):
year=2025
month1=9
jday=268
mday=25
wday=5
hour24=10
hour12=10
minute=1
second=27
milli=869
Or you could make a class for it:
import java.util.Calendar;
import java.util.GregorianCalendar;
class Demo {
static class OneCal extends GregorianCalendar {
int getYear() { return get(Calendar.YEAR); }
int getMonth1() { return get(Calendar.MONTH) + 1; } // Returns 1-based month
int getJulianDay() { return get(Calendar.DAY_OF_YEAR); }
int getDayOfMonth() { return get(Calendar.DAY_OF_MONTH); }
int getDayOfWeek() { return get(Calendar.DAY_OF_WEEK); }
int getHour24() { return get(Calendar.HOUR_OF_DAY); }
int getHour12() { return get(Calendar.HOUR); }
int getMinute() { return get(Calendar.MINUTE); }
int getSecond() { return get(Calendar.SECOND); }
int getMilli() { return get(Calendar.MILLISECOND); }
String getDateStr() { return String.format("%04d-%02d-%02d", getYear(), getMonth1(), getDayOfMonth()); }
String getTimeStr() { return String.format("%02d:%02d:%02d", getHour24(), getMinute(), getSecond()); }
}
public static final void main(String []args) {
final OneCal mycal = new OneCal();
System.out.println("year=" + mycal.getYear());
System.out.println("month1=" + mycal.getMonth1());
System.out.println("jday=" + mycal.getJulianDay());
System.out.println("mday=" + mycal.getDayOfMonth());
System.out.println("wday=" + mycal.getDayOfWeek());
System.out.println("hour24=" + mycal.getHour24());
System.out.println("hour12=" + mycal.getHour12());
System.out.println("minute=" + mycal.getMinute());
System.out.println("second=" + mycal.getSecond());
System.out.println("milli=" + mycal.getMilli());
System.out.println("date=" + mycal.getDateStr());
System.out.println("time=" + mycal.getTimeStr());
}
}
Output (at one time):
year=2025
month1=9
jday=268
mday=25
wday=5
hour24=10
hour12=10
minute=9
second=53
milli=161
date=2025-09-25
time=10:09:53