import java.util.*; import java.util.GregorianCalendar; import java.util.Locale;
public class GregorianCalendarTest { public static void main(String[] args) { /* 如果想看到不同地区的时间,在main方法第一行加:Locale.setDefault(Locale.CHINA); / Locale.setDefault(Locale.CHINA); / * 用给定的日期和时间构造一个Gregorian日历对象,表示默认地区、时区的当前时间 * GregorianCalendar(int year, int month, int day) * GregorianCalendar d = new GregorianCalendar(int year, int month, int day, int hour, int minutes, int seconds) * 参数 year 年份 * month 月份 以0为基准,0表示一月 * day 日期 * hour 小时(0-23) * minutes 分钟(0-59) * seconds 秒 (0-59) / GregorianCalendar d = new GregorianCalendar(); / int getFirstDayOfWeek(); * 获得哪天是一周的第一天 / int firstDayOfWeek = d.getFirstDayOfWeek(); System.out.println("firstDayWeek:" + firstDayOfWeek); / * int get(int filed) * 返回定域的值 int get(int filed) * 参数 filed 可以是以下选项之一 * Calendar.ERA, * Calendar.Year, Calendar.Month, * Calendar.WEEK_OF_YEAR,Calendar.WEEK_OF_MONTH, Calendar.DAY_OF_MONTH, * Calendar.DAY_OF_YEAR,Calendar.DAY_OF_WEEK,Calendar. * DAY_OF_WEEK_IN_MONTH; * Calendar.AM_PM,Calendar.HOUR,Calendar.HOUR_OF_DAY,Calendar.MINUTE, * Calendar.SECOND,Calendar.MILLISECOND,Calendar.ZON, * Calendar.DST_OFFSET; */ // 有的地区月是从0开始的,所以要加1,有的地区星期从周一开始,所以要减1 int month = d.get(Calendar.MONTH); int today = d.get(Calendar.DAY_OF_MONTH); // 获得当天是该月几号 int weekday = d.get(Calendar.DAY_OF_WEEK);// 获得当天是该周几 System.out.println("month:" + (month + 1)); System.out.println("today: " + today); System.out.println("weekday: " + (weekday - 1));
/*
* void set(int filed, int value)
* 设置特定域的值
* 参数 filed get接收的常量之一 value 新值
*/
/*
*void set(int year, int month, int day)
*void set(int year, int month, int day, int hour, int minutes, int seconds)
*将日期域和时间域设置为新值
*/
d.set(Calendar.DAY_OF_MONTH, 1);//将d设置为该月第一天
/*void add(int filed, int amount)
*对给定的时间域增加指定数量的时间
*eg:d.add(Calendar.DAY_OF_MONTH, 7) 将当前日历日期加上7
*参数 filed 需要修改的域(get中的常量之一)
* amount 域被改变的数量(可以是负值)
*/
/*void setTime(Date time)
*将日历设置为指定的时间点
*参数 time 时间点
*/
/*Date getTime();
*获得这个日历当前值所表达的时间点
*/
Date time = d.getTime();
System.out.println("time: " + time);
}
}