如何获得最小和最大的日期从给定的月份在java



如何使用java.util. calendar获取给定月份的最小和最大日期

最小值始终为本月1日。可以通过在month上加上1,然后在Calendar日期字段中减去1来确定最大值。

可以这样做:

c = ... // get calendar for month you're interested in     
int numberOfDays = c.getActualMaximum(Calendar.DAY_OF_MONTH)

对于日期的任何组成部分,您都可以用相同的方法找到最小值和最大值。

您尝试过以下方法吗?

将日历对象设置为所需的月份后,
calendar.getActualMaximum (Calendar.DATE);

对于最小值,我想它总是第一个。

希望对你有帮助。

最小日期始终为1和最大日期可以计算为

SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");
        Calendar calendar = Calendar.getInstance();
        int year = 2010;
        int month = Calendar.FEBRUARY;
        int date = 1;
        int maxDay =0;  
        calendar.set(year, month, date);
        System.out.println("First Day: " + formatter.format(calendar.getTime()));
        //Getting Maximum day for Given Month
        maxDay = calendar.getActualMaximum(Calendar.DAY_OF_MONTH);
        calendar.set(year, month, maxDay);  
        System.out.println("Last Day: " + formatter.format(calendar.getTime()));

希望这对你有帮助

解决方案如下,

public void ddl_month_valueChange(ValueChangeEvent event) {
 int v_month = Integer.parseInt(event.getNewValue().toString()) - 1; 
 java.util.Calendar c1 = java.util.Calendar.getInstance(); 
 c1.set(2011, v_month, 1); 
 Date d_set_att_from = c1.getTime(); 
 cal_att_from_date.setValue(d_set_att_from);
 c1.add(java.util.Calendar.MONTH, 1);
 c1.add(java.util.Calendar.DATE, -1); 
 Date d_set_att_to = c1.getTime();
 cal_att_to_date.setValue(d_set_att_to);  }

相关内容

  • 没有找到相关文章

最新更新