Calendar
类是一个抽象类,它为我们提供了丰富的方法来操作日期和时间,像获取特定的日期字段、设置日期和时间、进行日期的加减运算等。
由于 Calendar
是抽象类,不能直接实例化,我们通常使用 getInstance()
方法来获取一个 Calendar
实例。getInstance()
方法会根据当前的时区和语言环境返回一个具体的 Calendar
子类实例,
月份:范围(0~11)如果获取出来的是0,那么实际上是1月。
星期也是,1代表星期日,2代表星期一。
public class Test3 {public static void main(String[] args) throws ParseException {Calendar c = Calendar.getInstance();Date d=new Date();}}
获取日期中的某个字段信息:
0:纪元
1:年
2:月
3:一年中的第几周
4:一个月中的第几周
5:一个月中的第几天(星期)
...
在Java中,已经把这些索引定义成了常量
public int get (int field)
查表法:让数据跟数组里的索引产生对应关系
表:容器
public static String get(int relax){String[] arr={"","星期日","星期一","星期二","星期三","星期四","星期五","星期六" };return arr[relax];}
set方法:可以修改时间的年月或者日
public void set(int field)
add方法:能够对指定的时间字段添加或减去特定的时间量。
import java.util.Calendar;public class CalendarAddExample {public static void main(String[] args) {Calendar calendar = Calendar.getInstance();System.out.println("当前日期: " + calendar.getTime());// 增加 1 年calendar.add(Calendar.YEAR, 1);System.out.println("增加 1 年后的日期: " + calendar.getTime());// 减少 2 个月calendar.add(Calendar.MONTH, -2);System.out.println("减少 2 个月后的日期: " + calendar.getTime());}
}
field
:表示时间字段,例如Calendar.YEAR
、Calendar.MONTH
、Calendar.DAY_OF_MONTH
等。amount
:要添加或减去的时间量。正数表示添加,负数表示减去。