• 日期时间类


     

    1.Date类概述

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

    查阅Date类的描述,发现Date拥有多个构造器,只是大部分已经过时,但是其中有未过时的构造器可以把毫秒值转成日期对象。

    • public Date():分配Date对象并初始化此对象,以表示分配它的时间(精确到毫秒)。
    • public Date(long):分配Date对象并初始化此对象,以表示自从标准基准时间(称为“历元(epoch)”,即1970年1月1日00:00:00 GTM)以来的指定毫秒数。

    简单来说:使用无参构造,可以自动设置当前系统时间的毫秒时刻;指定long类型的构造函数,可以自定义毫秒时刻。例如:

    import java.util.Date;
    
    public class Demo01Date {
        public static void main(String[] args) {
            // 创建日期对象,把当前的时间
            System.out.println(new Date()); // Sun Jan 27 21:01:10 GMT+08:00 2019
            // 创建日期对象,把当前的毫秒值转成日期对象
            System.out.println(new Date(0L)); // Thu Jan 01 08:00:00 GMT+08:00 1970
        }
    }

    tip:在使用println方法时,会自动调用Date类中的toString方法。Date类对Object类中的toString方法进行了覆盖重写,所以结果为指定格式的字符串。

    常用方法

    Date类中的多数方法已经过时,常用的方法有:

    public long getTime() 把日期对象转换成对应的时间毫秒值。

    2.DateFormat类

    java.text.DateFormat 是日期/时间格式化子类的抽象类,我们通过这个类可以帮我们完成日期和文本之间的转换,也可以在Date对象与String对象之间进行来回转换。

    • 格式化:按照指定的格式,从Date对象转换成String对象。
    • 解析:按照指定的格式,从String对象转换成Date对象。

    构造方法

    由于DateFormat为抽象类,不能直接使用,所以需要常用的子类java.text.SimpleDateFormat。这个类需要一个模式来指定格式化或解析的标准。构造方法为:

    • public SimpleDateFormat(String pattern):用给定的模式和默认的语言环境的日期格式符号构造SimpleDateFormat。

    参数pattern是一个字符串,代表日期时间的自定义格式。

    格式规则

    常用的格式规则为:

    tip:更详细的格式规则,可以参考SimpleDateFormat类的API文档

    标识字母(区分大小写) 含义
    y
    M
    d
    H
    m
    s

    常用方法

    DateFormat类的常用方法:

    • public String format(Object obj):可以将接收的Date对象格式化为字符串。(该方法同时可以接收时间毫秒值
    • public Date parse(String source):将字符串解析为Date对象。
    SimpleDateFormat df1 = new SimpleDateFormat("yyyy-MM-dd")
       //将当前日期转换为字符串
       String s = df1.format(new Date());
       System.out.println("---------------------------------------------");
       //将字符串转换为日期对象
       SimpleDateFormat df2 = new SimpleDateFormat("yyyy/MM/dd")
       Date d = df2.parse("1949/10/01")
       System.out.println("---------------------------------------------");
        //将时间毫秒值转换成日期对象
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd");
        Date d1 = new Date();
        String str = sdf.format(d1.getTime);
    

      

    注意:使用psrse方法把字符串解析为Date对象时,被解析字符串的格式必须与DateFormat对象中的格式相同!

    如以上代码中的被解析的字符串“1949/10/01”对应的日期格式为“yyyy/MM/dd”

  • 相关阅读:
    质数
    解决Winform中ListView.TopItem设置的问题
    证书格式简介及不同格式之间的转换方式
    Postgresql如何清理pg_xlog
    VirtualBox 4.2 released !
    ImportError: No module named qtdemo_rc
    C#使用RSA证书文件加密和解密示例
    VIM自动关闭预览提示窗口
    VMware和VirtualBox中的网络适配器类型及虚拟网络性能优化
    正则表达式Java
  • 原文地址:https://www.cnblogs.com/XJP-now/p/10328297.html
Copyright © 2020-2023  润新知