我正在做一项任务,它涉及使用GregorianCalendar。规范说我需要使用setLenient(false);我该怎么做呢?我还需要设置一个恒定日期(1/1/2009),以便我的程序的第一天始终如此。
它还表示通过以下方式访问日,月和年:
get(1) //returns the year
get(2) // returns the month
get(5) /// returns the day
要在日期中添加n天,请使用字段编号5调用add方法:add(5,n);
要减去:add(5,-n);
有人可以解释一下这意味着什么以及如何实施它?
答案 0 :(得分:3)
首先访问API文档here。这些文档准确解释了Java中类中可用的方法。
例如,要获取日历,您可以:
Calendar c = Calendar.getInstance();
您将在文档中看到实际上有多种方法可以获取日历,默认情况下是GregorianCalendar。
获得Calendar对象后,您可以调用传递必要参数的任何方法。例如,
c.setLenient(true);
要使用get方法,您必须指定您希望获得的字段。
int month = c.get(Calendar.MONTH);
等等。
答案 1 :(得分:1)
创建一个Calendar实例并在其上调用setLenient。
Calendar cal = Calendar.getInstance();
cal.setLenient(false);
int month = cal.get(Calendar.MONTH);
更新:
由于你在评论中只提到了SimpleDateFormat,这里也是一个例子:
Date today = cal.getTime();
DateFormat formatter = new SimpleDateFormat("yyyy-MMM-dd");
System.out.println(formatter.format(today));
Java Almanac是这些简单代码段示例的良好来源。
答案 2 :(得分:0)
创建GregorianCalendar实例:
Calendar cal = new GregorianCalendar();
cal.setLenient(false);
参考文献: