Java Data类

Posted 李亦华的博客

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java Data类相关的知识,希望对你有一定的参考价值。

Date类的概述

java.util,Date 表示日期和时间的类
类 Date 表示特定的瞬间,精确到千分之一秒(毫秒)

获取时间原点到当前系统时间经历了多少秒

// 时间原点:1970 年 01 月 01 日 00:00:00

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

Date类常用的构造方法和成员方法

成员方法

getTime()方法

返回:时间原点以来,此Date对象表示的毫秒数

import java.util.Date;

public class DemoGetTime {
    public static void main(String[] args) {
        Date date = new Date();
        long time = date.getTime();
        
        // 输出:1578728202850
        // 该方法类似于 System.currentTimeMillis()
        System.out.println(time);
    }
}

构造方法

Date类的无参构造方法

返回:当前系统的日期和时间

import java.util.Date;

public class DemoDate1 {
    public static void main(String[] args) {
        Date date = new Date();

        // 输出:Sat Jan 11 15:40:50 CST 2020
        System.out.println(date);
    }
}

Date类的带参构造方法

Date(long date) 参数为一个毫秒值,把传入的毫秒值转换为Date日期

返回:传入参数(毫秒值)对应的的日期和时间

import java.util.Date;

public class DemoDate2 {
    public static void main(String[] args) {
        Date date = new Date(0L);

        // 这里输出的是0毫秒时的日期和时间,即时间原点的日期和时间
        // 输出:Thu Jan 01 08:00:00 CST 1970
        System.out.println(date);
    }
}

DateFormat抽象类和SimpleDateFormat实现类

说明:

/**
 * java.text.DateFormat:
 *                      是日期/时间格式化子类的抽象类
 * 作用:
 *      格式化(也就是日期->文本)、解析(文本->日期)
 * 成员方法:
 *          string format( Datedate)按照指定的模式,把Date日期,格式化为符合模式的字符串
 *          Date parse( string source)把符合模式的字符串,解析为Dote日期
 * DateFormat类是一个抽象类,无法直接创建对象使用,
 * 可以使用 DateFormat类的子类java.text.SimpleDateFormat extends DateFormat
 *
 * 构造方法:
 *          SimpleDateFormat(String pattern)用给定的模式和默认语言环境的日期格式符号构造SimpleDateFormat
 *         参数:
 *              string pattern:传递指定的模式
 *         模式:
 *              区分大小写的
 *              y       年
 *              M       月
 *              d       日
 *              H       时
 *              m       分
 *              s       秒
 *         注意:
 *              写对应的模式,会把模式替换为对应的时间和日期
 *              如:"yyyy 年 MM 月 dd 日 HH 时 mm 分 ss 秒"
 *
 */

测试

DateFormat类的format方法

输出指定格式的日期、时间

import java.text.SimpleDateFormat;
import java.util.Date;

public class Demo01FormatMethod {
    public static void main(String[] args) {
        // 创建SimpleDateFormat对象,在SimpleDateFormat(String pattern)构造方法中传入指定的模式
        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy 年 MM 月 dd 日 HH 时 mm 分 ss 秒");

        // 调用DateFormat的实现类SimpleDateFormat中的format方法,
        // 按照构造方法中指定的模式,把Date解析为符合模式的字符串(文本)
        Date date = new Date();
        String dateFormat = simpleDateFormat.format(date);

        // Sat Jan 11 16:24:43 CST 2020
        System.out.println(date);
        // 2020 年 01 月 11 日 16 时 24 分 43 秒
        System.out.println(dateFormat);
    }
}

DateFormat类的parse方法

把符合构造方法中模式的字符串,解析为Date日期

/**
 * DateFormat类中的parse方法,把文本解析为日期
 * 使用步骤:
 *          1,创建 SimpleDateFormat对象,构造方法中传递指定的模式
 *          2.调用 SimpleDateFormat对象中的 parse方法,把符合SimpleDateFormat(String pattern)构造方法中模式的字符串,解析为Date日期
 * 注意:
 *      public Date parse(String source) throws ParseException
 *      parse方法声明了ー个异常叫 ParseException
 *      如果字符串和构造方法的模式不ー样,那么程序就会抛出此异常
 *      调用一个出了异常的方法,就必须的处理这个异常,
 *      要么 throws 继续批出这个昇常,要么 try catch自己处理
 */
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

public class Demo01ParseMethod {
    public static void main(String[] args)
            throws ParseException {
        // 创建SimpleDateFormat对象,在SimpleDateFormat(String pattern)构造方法中传入指定的模式
        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy 年 MM 月 dd 日 HH 时 mm 分 ss 秒");

        // 调用 SimpleDateFormat对象中的 parse方法,把符合构SimpleDateFormat(String pattern)造方法中模式的字符串,解析为Date日期
        Date dateParse = simpleDateFormat.parse("2020 年 01 月 11 日 16 时 24 分 43 秒");

        // Sat Jan 11 16:24:43 CST 2020
        System.out.println(dateParse);
    }
}

以上是关于Java Data类的主要内容,如果未能解决你的问题,请参考以下文章

java 代码片段

java代码在片段活动中不起作用

apriori片段代码

需要对特定 R 代码片段的解释

如何从 Android Studio 中片段的 XML 布局导航到相应的 java 类?

Java.nio:最简洁的递归目录删除