博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Java从零开始学三十一(DATE和Calendar类)
阅读量:6757 次
发布时间:2019-06-26

本文共 2952 字,大约阅读时间需要 9 分钟。

一、Date类

Date类是一个相对较为简单的操作类,在使用中直接使用java.util.Date类的构造方法并进行输出就可以得到一个完整的日期

二、Calendar类

Calendar类可以将取得的时间精确到毫秒。但是,这个类本身是一个抽象类,如果要想使用一个抽象类,则必须依靠对象的多态性,通过子类进行父类的实例化操作,Calendar的子类是GregorianCalendar类。
package com.pb.demo3;import java.util.Calendar;import java.util.GregorianCalendar;/* * 使用Calendar类显示当前时间, * 使用get方法表示时间,日期的各个部分数字如:年,月,日 * 使用set方法设置日期字段,将当前时间设置为9月 * 使用add方法为给定的日历字段添加或者减去指定的时间量,在当前时间上加10天 * 使用GregorianCalendar的isLeapYear方法判断是否是闰年 */public class CalendarDemo {    public static void main(String[] args) {        /*         * 将当前日期时间表是为年,月,日,时,分,秒         */        Calendar calendar=Calendar.getInstance();  //日历对象        int year=calendar.get(Calendar.YEAR);        int month=calendar.get(Calendar.MONTH)+1;  //月份默认是0-11需要手动加1        int day=calendar.get(Calendar.DAY_OF_MONTH);        int hour=calendar.get(Calendar.HOUR_OF_DAY);        int minute=calendar.get(Calendar.MINUTE);        int second=calendar.get(Calendar.SECOND);        System.out.println("今天是: "+year+"年"+month+"月"+day+"日");        System.out.println("现在时:  "+hour+"时"+minute+"分"+second+"秒");        /*将当前时间的月份设置为9 月*/        calendar.set(Calendar.MONTH, 8);  //设置月份时-1        int year1=calendar.get(Calendar.YEAR);        int month1=calendar.get(Calendar.MONTH)+1;  //月份默认是0-11需要手动加1        int day1=calendar.get(Calendar.DAY_OF_MONTH);        System.out.println("今天是: "+year1+"年"+month1+"月"+day1+"日");        //将当前时间加10天        calendar.add(Calendar.DAY_OF_MONTH, 10);        int year2=calendar.get(Calendar.YEAR);        int month2=calendar.get(Calendar.MONTH)+1;  //月份默认是0-11需要手动加1        int day2=calendar.get(Calendar.DAY_OF_MONTH);        System.out.println("今天是: "+year2+"年"+month2+"月"+day2+"日");        /*判断 是否是闰年*/        GregorianCalendar gregorianCalendar=new GregorianCalendar();        boolean flag=gregorianCalendar.isLeapYear(gregorianCalendar.get(gregorianCalendar.YEAR));        if(flag==true){            System.out.println("今年是闰年!");        }else{            System.out.println("今年是不闰年!");        }    }}

 

 三、SimpleDateFormat类

格式化模板
No.
标记
描述
1
y
年,年份是四位数字,所以需要使用“yyyy”表示年。
2
M
年中的月份,月份是两位数字,所以需要使用“MM”表示月。
3
d
月中的天数,天数是两位数字,所以需要使用“dd”表示日。
4
H
一天中的小时数(24小时),小时是两位数字,使用“HH”表示小时。
5
m
小时中的分钟数,分钟是两位数字,使用“mm”表示分钟。
6
s
分钟中的秒数,秒是两位数字,使用“ss”表示秒。
7
S
毫秒数,毫秒数字是三位数字,使用“SSS”表示毫秒。

四、例子

package com.pb.demo3;import java.text.ParseException;import java.text.SimpleDateFormat;import java.util.Date;public class DateTest {    public static void main(String[] args) {        //声明SimpleDateFormat对象并规定格式        SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");        //获得当前时间        Date date=new Date();        System.out.println("当前时间: "+sdf.format(date));        String newStr="2011-08-25 14:07:26";        try {            Date newdate=sdf.parse(newStr);            System.out.println("转换后的时间:"+newdate);                   } catch (ParseException e) {            // TODO Auto-generated catch block            e.printStackTrace();        }            }}

 

转载地址:http://orgho.baihongyu.com/

你可能感兴趣的文章
Linux下安装Emacs
查看>>
网络学习(二)VMware Workstation7虚拟机使用前介绍及部分实验成果展
查看>>
WIN2012案例系列3:域还原后验证失败故障详解
查看>>
2012.2.28
查看>>
你知道怎么实现MBR和GPT之间的转换么?
查看>>
操作系统
查看>>
vuejs学习之 项目打包之后的首屏加载优化
查看>>
三十、小程序解析HTML(对富文本返回数据的处理)
查看>>
利用YUM搭建DNS
查看>>
好详细啊saltsatck超全配置
查看>>
安装LAMP环境遇到Sorry, I cannot run apxs
查看>>
centos7双网卡bond失败
查看>>
JNI AES文件及字符串加解密
查看>>
APUE读书笔记-16网络通信-01简介
查看>>
企业网络安全必需措施 保证高效工作环境
查看>>
apache站点稍大文件不完整原因及解决
查看>>
python的reduce函数
查看>>
细读shell-6
查看>>
ubuntu11.10安装php mysql wordpress
查看>>
一、2 基于wsgiref定义自己的web框架
查看>>