资源描述:
《java日期函数》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、java中关于时间日期操作的常用函数1.计算某一月份的最大天数Calendartime=Calendar.getInstance();time.clear();time.set(Calendar.YEAR,year);time.set(Calendar.MONTH,i-1);//注意,Calendar对象默认一月为0intday=time.getActualMaximum(Calendar.DAY_OF_MONTH);//本月份的天数注:在使用set方法之前,必须先clear一下,否则很多信息会继承自系统当前时间2
2、.Calendar和Date的转化(1)Calendar转化为DateCalendarcal=Calendar.getInstance();Datedate=cal.getTime();(2)Date转化为CalendarDatedate=newDate();Calendarcal=Calendar.getInstance();cal.setTime(date);3.格式化输出日期时间Datedate=newDate();SimpleDateFormatdf=newSimpleDateFormat("yyyy-MM
3、-ddhh:mm:ss");System.out.println(df.format(date));4.计算一年中的第几星期(1)计算某一天是一年中的第几星期Calendarcal=Calendar.getInstance();cal.set(Calendar.YEAR,2006);cal.set(Calendar.MONTH,8);cal.set(Calendar.DAY_OF_MONTH,3);intweekno=cal.get(Calendar.WEEK_OF_YEAR);(2)计算一年中的第几星期是几号Si
4、mpleDateFormatdf=newSimpleDateFormat("yyyy-MM-dd");Calendarcal=Calendar.getInstance();cal.set(Calendar.YEAR,2006);cal.set(Calendar.WEEK_OF_YEAR,1);cal.set(Calendar.DAY_OF_WEEK,Calendar.MONDAY);System.out.println(df.format(cal.getTime()));输出:2006-01-025.add()和r
5、oll()的用法(1)add()方法SimpleDateFormatdf=newSimpleDateFormat("yyyy-MM-dd");Calendarcal=Calendar.getInstance();cal.set(Calendar.YEAR,2006);cal.set(Calendar.MONTH,8);cal.set(Calendar.DAY_OF_MONTH,3);cal.add(Calendar.DATE,-4);Datedate=cal.getTime();System.out.println
6、(df.format(date));cal.add(Calendar.DATE,4);date=cal.getTime();System.out.println(df.format(date));输出:2006-08-302006-09-03(2)roll方法cal.set(Calendar.YEAR,2006);cal.set(Calendar.MONTH,8);cal.set(Calendar.DAY_OF_MONTH,3);cal.roll(Calendar.DATE,-4);date=cal.getTime
7、();System.out.println(df.format(date));cal.roll(Calendar.DATE,4);date=cal.getTime();System.out.println(df.format(date));输出:2006-09-292006-09-03可见,roll()方法在本月内循环,一般使用add()方法;6.计算两个任意时间中间的间隔天数(1)传进Calendar对象/***//**计算两个时间之间相隔天数*@paramstartday开始时间*@paramendday结束时
8、间*@return*/publicintgetIntervalDays(Calendarstartday,Calendarendday)...{//确保startday在endday之前if(startday.after(endday))...{Calendarcal=startday;startday=endday;endday=cal;}//分别得到两个