JAVA下的日期时间类和格式化输出

最近在项目中用到日期和时间,由于开始对JAVA下的日期和时间类掌握的不够熟练,所以在使用的过程成中遇到了一点问题,在此特总结一下。

    Date类是比较经典的一个时间类,但是它里面的很多方法都已经过时,而Calendar相对Date较年轻且比较好用些。

    根据使用频率,我们一般有如下几种用法:

    1、获得当前时间并格式化输出

  1. //使用默认时区和语言环境获得一个日历   
  2. Calendar cale = Calendar.getInstance();   
  3. //将Calendar类型转换成Date类型   
  4. Date tasktime=cale.getTime();   
  5. //设置日期输出的格式   
  6. SimpleDateFormat df=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");   
  7. //格式化输出   
  8. System.out.println(df.format(tasktime));  

  2、输出指定日期

  1. //使用默认时区和语言环境获得一个日历   
  2. Calendar cale = Calendar.getInstance();   
  3. //对日期和时间进行设置   
  4. cale.set(Calendar.YEAR, 2008);   
  5. //此处注意,MONTH是从0开始的,一下设置为12,如果为宽松模式,时间自动变为09年1月,如果为严格模式,应抛出异常   
  6. cale.set(Calendar.MONTH, 12);   
  7. //月份减1   
  8. cale.add(Calendar.MONTH, -1);   
  9. cale.set(Calendar.DAY_OF_MONTH, 20);   
  10. cale.set(Calendar.HOUR_OF_DAY, 18);   
  11. cale.set(Calendar.MINUTE, 32);   
  12. //分钟加1 对于没有设置项,如秒,则采用系统默认   
  13. cale.add(Calendar.MINUTE, 1);   
  14. //将Calendar类型转换成Date类型   
  15. Date tasktime=cale.getTime();   
  16. //设置日期输出的格式   
  17. SimpleDateFormat df=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");   
  18. //格式化输出   
  19. System.out.println(df.format(tasktime));  

附:SimpleDateFormat的格式:

   在实例化SimpleDateFormat时,采用"yyyy-MM-dd HH:mm:ss"这样的构造参数,可以对输出的格式进行设置。而字符串中的字母代表的含义如下:

  G 年代标志符
  y 年
  M 月
  d 日
  h 时 在上午或下午 (1~12)
  H 时 在一天中 (0~23)
  m 分
  s 秒
  S 毫秒
  E 星期
  D 一年中的第几天
  F 一月中第几个星期几
  w 一年中第几个星期
  W 一月中第几个星期
  a 上午 / 下午 标记符
  k 时 在一天中 (1~24)
  K 时 在上午或下午 (0~11)
  z 时区

  除了上述具有实际含义的字母之外,还可以配合诸如:空格、:、-等进行格式化设置。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值