天天看点

date

Date类:日期类
        ·1 Data类有两大功能,1把日期解释为年月日时分秒
                                                2运行格式化和解析日期字符串
        ·2 Date类中的以上两大功能分别被Calendar类和DateFormat类替换掉了
        ·3 在date类中出现了大量的以弃用的和过时的方法。
DataFormat类:Java.text包中
                        是一个抽象类
                        直接子类SimpleDateFormat
        作用:格式化日期并解析日期时间,通常用于日期和string字符串之间的转换
                日期--》文本   文本--》日期
                借助Date对象
Calendar类  日历类:实现日期和时间之间的转换
                        是一个抽象类
                        作用获取日历上的时间字段值
                        Calendar的对象的创建通过静态的getInstance()           

Date:

public static void main(String[] args) {
        //构造函数 Data()
        Date date = new Date();
        //获取的当前系统时间
        System.out.println( date.toString());
        //Wed  Nov 04  15:35:43  CST 2020
        //星期 月份 日期 时:分:秒 cst 年份
        //构造函数 Date
        //1970年1月1日00:00:00 GMT起的指定毫秒数。--标准基准时间 历元 
        Date date1 = new Date(45484784l);
        System.out.println(date1);
        //日期和毫秒值的转换getTime()
        long time = date1.getTime();
        System.out.println("time = " + time);
    }           

运行结果:

Wed Nov 04 22:47:17 CST 2020
        Thu Jan 01 20:38:04 CST 1970
        time = 45484784           

DateFormat

public static void main(String[] args) {
        Date date = new Date();//日期对象
        //2020/11/4 16:01:22
        //使用DateFormat的子类SimpleDateFormat
        /*
         * G --》代表年代
         * y --》年
         * M -->月
         * m --》分钟
         * d --》一月中的第几天
         * D --》一年中的第几天
         * h --》12小时值
         * H --》24小时值
         * s --》秒
         * S --》毫秒
         * E --》星期
         * F --》一月中的第几个星期几
         * W --》一月中的第几个星期几
         * w --》一年中第几星期
         * z --》时区
         * */
        DateFormat df = new SimpleDateFormat("yyyy年MM月dd日-HH时mm分ss秒");//多态
        //把日期数据类型转换成字符串数据类型  格式化format(Date date)
        String format = df.format(date);
        System.out.println("format = " + format);//format = 2020年11月04日-16时19分24秒

        //把字符串转换成日期格式
        String time = " 2020年11月04日";//转换成Date类型 cst
        //parse(String str);
        //指定日期格式,参照字符串的格式
        SimpleDateFormat time2 = new SimpleDateFormat("yyyy年MM月dd日");
        try {
            Date parse = time2.parse(time);
            System.out.println(parse);
            //Wed Nov 04 00:00:00 CST 2020
            //00:00:00是因为在字符串定义没有给时分秒设定值
        } catch (ParseException e) {
            e.printStackTrace();
        }

    }
           
format = 2020年11月04日-23时05分31秒
    Wed Nov 04 00:00:00 CST 2020           
public static void main(String[] args) {
        //构建一个Calendar类日历对象
        //通过静态方法getInstance()
        Calendar instance = Calendar.getInstance();
        //年月日 时分秒 星期
        int i = instance.get(Calendar.YEAR);
        System.out.println("i = " + i);//2020   年
        int i1 = instance.get(Calendar.MARCH);
        System.out.println("i1 = " + i1);//10   月
        int i2 = instance.get(Calendar.DATE);
        System.out.println("i2 = " + i2);//4    日
        int i3 = instance.get(Calendar.HOUR);
        System.out.println("i3 = " + i3);//4    12时
        int i4 = instance.get(Calendar.MINUTE);
        System.out.println("i4 = " + i4);//58   分
        int i5 = instance.get(Calendar.SECOND);
        System.out.println("i5 = " + i5);//59   秒
        System.out.println(i + "/" + (i1 + 1) + "/" + i2 + "/" + " " + i3 + ":" + i4 + ":" + i5);

        //修改当前的时间为7后的值
        instance.add(Calendar.DATE,7);
        //后去当前时间
        int i6 = instance.get(Calendar.DATE);
        System.out.println("i6 = " + i6);
        //修改当前时间为5个小时后
        instance.add(Calendar.HOUR,5);
        //获取当前的小时
        int i7 = instance.get(Calendar.HOUR);
        System.out.println("i7 = " + i7);
        //日历对象转换成日期对象 Date格式
        Date time = instance.getTime();
        System.out.println("time = " + time);

    }           
i = 2020
i1 = 10
i2 = 4
i3 = 11
i4 = 7
i5 = 53
2020/11/4/ 11:7:53
i6 = 11
i7 = 4
time = Thu Nov 12 04:07:53 CST 2020           
上一篇: date
下一篇: date