JDK8之前日期时间API

一 .java 8之前的日期时间的API:
1.System类的currentTimeMillis();
2.java.util.Date & java.sql.Date;
3.SimpleDateFormat
4.Calendar

二.
SimpleDateFormat

Date date = new Date();
        System.out.println(date); //Mon Feb 01 13:42:39 SGT 2021

        //SimpleDateFormat : 对日期Date类的格式化和解析
        //格式化 : Date --> 字符串
        //解析 : 字符串 --> Date

        //1.默认的空参构造
        SimpleDateFormat sdf = new SimpleDateFormat();
        System.out.println(sdf.format(date)); //21-2-1 下午1:42

        //2.设置日期格式输出
        SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy-MM-dd hh-mm-ss");
        System.out.println(sdf1.format(date));//2021-02-01 01-44-59

        //注意解析 , 字符串 -- >Date  :必须要按照相应的格式 ,否则会报错
        Date parse = sdf1.parse("2021-02-01 01-44-59");
        System.out.println(parse);

 

三 . Calendar

//Calendar (抽象类)
public class DateTest2 {
    public static void main(String[] args) {
        //1.调用Calendar的子类 :class java.util.GregorianCalendar
        Calendar calendar = Calendar.getInstance();
        System.out.println(calendar.getClass());//class java.util.GregorianCalendar

        //2.常用方法
        //get()
        int i = calendar.get(Calendar.DAY_OF_MONTH); //获取当前是本月的第几天
        int i2 = calendar.get(Calendar.DAY_OF_YEAR); //当天是本年的第几天
        int i3 = calendar.get(Calendar.WEEK_OF_YEAR); //当周是本年的第几周
        System.out.println(i);
        System.out.println(i2);
        System.out.println(i3);
         //set() --> Calendar是可变的
        calendar.set(Calendar.DAY_OF_MONTH,2); //修改当天是本月第几天
        int i4 = calendar.get(Calendar.DAY_OF_MONTH);
        System.out.println(i4);
        //add()
        calendar.add(Calendar.DAY_OF_MONTH,3); //在当天的基础上加几天
        int i5 = calendar.get(Calendar.DAY_OF_MONTH);
        System.out.println(i5);
        //getTime()
        Date time = calendar.getTime(); //相当于创建一个Date类
        System.out.println(time);
    }
}

四 .JDK8之前日期时间API的缺点

 
posted @ 2021-02-02 15:34  Anonymity_Zhang  阅读(80)  评论(0编辑  收藏  举报