如何使用日历创建日期

时间:2013-11-02 15:10:09

标签: java calendar

我需要使用日历创建日期,在此日期我指定月份,周数和星期几。 我正在创建新的日历实例: **

Calendar c = Calendar.getInstance();
c.set(Calendar.DAY_OF_WEEK,7);
c.set(Calendar.WEEK_OF_MONTH,1);
c.set(Calendar.MONTH,10);

** 当调用c.getTime(); 而不是在11月的第一个星期六,我将在十月的最后一个星期六?

3 个答案:

答案 0 :(得分:1)

您需要更正日历常量值。请参考下面的代码,它工作正常。 请记住,日历中的月份值以0和1开头,即月份为0表示月份为1月

Calendar c = Calendar.getInstance();
    c.set(Calendar.DAY_OF_WEEK,4);
    c.set(Calendar.WEEK_OF_MONTH,4);
    c.set(Calendar.MONTH,7);

答案 1 :(得分:1)

DAY_OF_WEEK是星期日到星期六。值7表示SATURDAYWEEK_OF_MONTH

  

获取和设置的字段编号,表示其中的周数   这个月。本月的第一周,由定义   getFirstDayOfWeek()和getMinimalDaysInFirstWeek(),值为1。   子类在第一个之前的几天定义WEEK_OF_MONTH的值   这个月的一周。

MONTH个数字从0开始,因此10是11月。您尚未指定年份,因此它使用当前年份。

11月的第一周星期六落在

Sat Nov 02 11:19:24 EDT 2013

你还有什么期待?十月?将您的MONTH值更改为9

答案 2 :(得分:0)

试试这个

  c.set(2000, 7, 4);  // YYYY M D

  // print the result
  System.out.println("Altered date is :" + cal.getTime());