日期类加减及Java中日期类操作算法大全计算机等级考试

文章作者 100test 发表时间 2010:01:01 12:18:40
来源 100Test.Com百考试题网


  1.计算某一月份的最大天数
  1Calendar time=Calendar.getInstance().
  2time.clear().
  3time.set(Calendar.YEAR,year). //year 为 int
  4time.set(Calendar.MONTH,i-1).//注意,Calendar对象默认一月为0
  5int day=time.getActualMaximum(Calendar.DAY_OF_MONTH).//本月份的天数
  注:在使用set方法之前,必须先clear一下,否则很多信息会继承自系统当前时间
  2.Calendar和Date的转化
  (1) Calendar转化为Date
  Calendar cal=Calendar.getInstance().
  Date date=cal.getTime().
  (2) Date转化为Calendar
  Date date=new Date().
  Calendar cal=Calendar.getInstance().
  cal.setTime(date).
  3.格式化输出日期时间 (这个用的比较多)
  其一
  Date date=new Date().
  SimpleDateFormat df=new SimpleDateFormat("yyyy-MM-dd hh:mm:ss").
  String time=df.format(date).
  System.out.println(time).//2008-10-27 08:52:32
  其二
  Calendar c = Calendar.getInstance().
  System.out.println(c.getTime()).//Mon Oct 27 08:51:21 CST 2008
  SimpleDateFormat simpleDateTimeFormat = new SimpleDateFormat(" yyyy-MM-dd HH:mm:ss ").
  c = Calendar.getInstance(Locale.CHINESE).
  System.out.println(simpleDateTimeFormat.format(c.getTime())).// 2008-10-27 08:51:21
  4.计算一年中的第几星期
  (1)计算某一天是一年中的第几星期
  Calendar cal=Calendar.getInstance().
  cal.set(Calendar.YEAR, 2006).
  cal.set(Calendar.MONTH, 8).
  cal.set(Calendar.DAY_OF_MONTH, 3).
  int weekno=cal.get(Calendar.WEEK_OF_YEAR).
  (2)计算一年中的第几星期是几号
  SimpleDateFormat df=new SimpleDateFormat("yyyy-MM-dd").
  Calendar cal=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-02
  5.add()和roll()的用法(不太常用)
  (1)add()方法
  SimpleDateFormat df=new SimpleDateFormat("yyyy-MM-dd").
  Calendar cal=Calendar.getInstance().
  cal.set(Calendar.YEAR, 2006).
  cal.set(Calendar.MONTH, 8).
  cal.set(Calendar.DAY_OF_MONTH, 3).
  cal.add(Calendar.DATE, -4).
  Date date=cal.getTime().
  System.out.println(df.format(date)).
  cal.add(Calendar.DATE, 4).
  date=cal.getTime().
  System.out.println(df.format(date)).
  输出:
  2006-08-30
  2006-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().
  System.out.println(df.format(date)).
  cal.roll(Calendar.DATE, 4).
  date=cal.getTime().
  System.out.println(df.format(date)).
  输出:
  2006-09-29
  2006-09-03

相关文章


如何在Windows下手动将Tomcat安装成为系统服务计算机等级考试
打造Tomcat安全启动帐号计算机等级考试
Javascript和JSP标签在页面动态生成树计算机等级考试
Tomcat下JSP、Servlet和JavaBean环境配置计算机等级考试
日期类加减及Java中日期类操作算法大全计算机等级考试
使用JavaScript将复杂表格导出为Excel计算机等级考试
JSP结合XML XSLT将输出转换HTML计算机等级考试
Java优化编程:内存管理计算机等级考试
计算机二级辅导:Java运行时多态性的实现计算机等级考试
澳大利亚华人论坛
考好网
日本华人论坛
华人移民留学论坛
英国华人论坛