JavaSE——JDK8之前的日期时间API

目录

一、System类中的currentTimeMills()

二、java.util.Date和子类java.sql.Date

     1.java.util.Date   表示特定的瞬间,精确到毫秒

      2.java.sql.Date   是java.util.Date的子类。它是针对SQL语句使用的,它只包含日期而没有时间部分,一般在读写数据库的时候用。

 三、SimpleDateFormat 简单的日期格式化类

      1.作用:此类的作用是用于格式化Date类或解析字符串的具体类

      2.格式化:Date日期--->字符串

       3.解析:字符串---->Date日期

四、Calendar日历类_抽象类


一、System类中的currentTimeMills()

     1.System类提供的 public static native long currentTimeMillis(); 的这个方法,用来返回当前时间与1970年1月1日0时0分0秒以毫秒为单位的时间差。

        >此方法适用于计算时间差,例如一段代码的运行所花费的时间

        public static void main(String[] args) {
                long currentTimeMillis = System.currentTimeMillis();
                System.out.println(currentTimeMillis);
        }

     2.计算世界时间的主要标准有:

         >UTC(Coordinated Universal Time)   世界标准时间

         >GMT(Greeenwich Mean Time)         格林威治标准时间

         >CST(Central Standard Time)            美国中部地区标准时间

 

二、java.util.Date和子类java.sql.Date

     1.java.util.Date   表示特定的瞬间,精确到毫秒

             1.1构造器:

                         Date():使用无参构造器创建的对象可以获取本地当前时间

                         Date(long time):分配一个 Date对象,并将其初始化为表示从标准基准时间(称为“时代”)即1970年1月1日  00:00:00 GMT起的指定毫秒数。

             1.2常用方法:

                         long getTime():返回自1970年1月1日以来,由 Date对象表示的00:00:00 GMT的毫秒数。

                         toString():把此对象转换为以下形式的字符串:Thu Jan 02 10:36:16 CST 2020

      2.java.sql.Date   是java.util.Date的子类。它是针对SQL语句使用的,它只包含日期而没有时间部分,一般在读写数据库的时候用。

             2.1构造器:

                         Date(long time):分配一个 Date对象,并将其初始化为表示从标准基准时间(称为“时代”)即1970年1月1日  00:00:00 GMT起的指定毫秒数。

             2.2常用方法:

                         long getTime():返回自1970年1月1日以来,由 Date对象表示的00:00:00 GMT的毫秒数。

                         void setTime():使用给定的毫秒时间值设置现有的 Date对象。

 

 三、SimpleDateFormat 简单的日期格式化类

      1.作用:此类的作用是用于格式化Date类或解析字符串的具体类

      2.格式化:Date日期--->字符串

        //无参构造下
        public void test() {
            //1.创建一个对象,默认的格式化和解析的格式为:20-1-2 下午1:23
            SimpleDateFormat simpleDateFormat = new SimpleDateFormat();
            
            //2.创建一个Date类对象            
            Date date1=new Date();

            String format = simpleDateFormat.format(date1);//3.将Date类转换为String类型
            System.out.println(format);
        }
        //带参构造下
        public void test(){
            //1.按照按照指定的方式格式化和解析:调用带参的构造器
            SimpleDateFormat simpleDateFormat=new SimpleDateFormat("yyyy-MM-dd");
            Date date=new Date();
            String format=simpleDateFormat.format(date);//结果为:2020-01-02
            System.out.println(format);
        }

       3.解析:字符串---->Date日期

        //无参构造下
        public void test(){
            //1.创建一个对象,默认的格式化和解析的格式为:20-1-2 下午1:23
            SimpleDateFormat simpleDateFormat = new SimpleDateFormat();

            //2.创建一个String类型的日期
            String str="20-1-2 上午1:00";
            try {
                Date date=simpleDateFormat.parse(str);//3.解析String类型的日期
                System.out.println(date);
            } catch (ParseException e) {
                e.printStackTrace();
            }
        }
       //带参构造下
       public void test03(){
            //按照按照指定的方式格式化和解析:调用带参的构造器
            SimpleDateFormat simpleDateFormat=new SimpleDateFormat("yyyy-MM-dd");    
            try {
                Date parse = simpleDateFormat.parse("2020-01-02");
                System.out.println(parse);//结果为:Thu Jan 02 00:00:00 CST 2020
            } catch (ParseException e) {
                e.printStackTrace();
            }
        }

四、Calendar日历类_抽象类 

   public void testCalendar(){
        //一、如何实例化:
        //1.调用其静态方法getInstance()方法
        Calendar calendar1=Calendar.getInstance();
        //2.创建其子类(GregorianCalendar)的对象
        Calendar calendar2=new GregorianCalendar();
        GregorianCalendar gregorianCalendar=new GregorianCalendar();

        //二、常用方法
        //1.get()方法
        int day_of_year=calendar1.get(Calendar.DAY_OF_YEAR);//获得当天在一年内的第几天
        System.out.println(day_of_year);
        System.out.println(calendar1.get(Calendar.SECOND));//获得当前的秒数

        //2.set()方法
        calendar1.set(Calendar.DAY_OF_YEAR,23);
        System.out.println(calendar1.get(Calendar.DAY_OF_YEAR));

        //3.Date getTime():返回Calendar的时间值的Date对象 日历类---->Date类
        System.out.println(calendar1.getTime());

        //4.setTime(Date date):使用给定的Date对象设置此日历的时间
        calendar1.setTime(new Date());
        System.out.println(calendar1.get(Calendar.DAY_OF_YEAR));
//        System.out.println(calendar1.getTime());
    }

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值