Java - Date

Date中的构造方法和成员方法

import java.util.Date;

public class demo {
    public static void main(String[] args) {
        /*
        空参数 Date()
        打印当前时间
         */
        Date d1 = new Date();
        System.out.println(d1);//Sun Jul 25 18:22:35 CST 2021

        /*
        把毫秒转化为日期
        Date类带参数的构造方法
        Date(Long date):传递毫秒值
         */
        Date d2 = new Date(0L);
        System.out.println(d2);//Thu Jan 01 08:00:00 CST 1970

        Date d3 = new Date(1627209270282L);
        System.out.println(d3);//Mon Dec 20 19:33:19 CST 2021

        /*
        把日期转化为毫秒
        Long getTime()
        返回自 1970 年 1 月 1 日 00:00:00 GMT 以来此Date对象表示的毫秒数
         */
        Date d4 = new Date();
        Long time = d4.getTime();
        System.out.println(time);//1627209270282
    }
}

DateFormat

是日期/时间格式化子类的抽象类

作用

格式化(也就是日期 -> 文本)、解析(文本 -> 日期)

成员方法

string format(Date date)按照指定的模式,把Date日期,格式化为符合模式的字符串
Date parse(String source)把符合模式的字符串,解析为Date日期

simpleDateFormat

DateFormat类是一个抽象类,无法直接创建对象使用,可以使用DateFormat的子类

构造方法

simpleDateFormat(String pattern用给定的模式和语言环境的日期格式SimpLeDateFormato

参数

string pattern : 传递指定的模式

模式

区分大小写的

比如:

"yyyy-MM-dd HH:mm:ss"
"yyyy年MM月dd日 HH时mm分ss秒"

注意:
模式中的字母不能更改,链接模式的符号可以改变

常用定义表

字符描述例子
y四位数年份2001
M年中的月份July or 07
d月份中日期10
H天中的小时 (0~23)22
m小时中的分钟30
s分钟中的秒钟55

代码实现

format

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

public class demo {
    public static void main(String[] args) {
        /*
        使用DateFormat类中的方法format,把日期格式化为文本
        string format(Date date)按照指定的模式,把Date日期,格式化为符合模式的字符串
        1、创建simpleDateFormat对象,构造方法中传递指定的模式
        2、调用simpleDateFormat对象中的方法format,按照构造方法中指定的模式,把Date日期格式化为符合模式的字符串文本
         */
        SimpleDateFormat si1 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); //我们定义的模式
        SimpleDateFormat si2 = new SimpleDateFormat("yyyy年MM月dd日 HH时mm分ss秒"); //我们定义的模式
        //定义当前时间
        Date date1 = new Date();
        //将时间传入SimpleDateFormat
        String s1 = si1.format(date1);
        String s2 = si2.format(date1);
        System.out.println(date1);//Sun Jul 25 19:00:22 CST 2021
        //按照我们指定的格式打印的日期
        System.out.println(s1);//2021-07-25 19:00:22
        //按照我们指定的格式打印的日期
        System.out.println(s2);//2021年07月25日 19时03分38秒
    }
}

parse

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

public class demo {
    public static void main(String[] args) throws ParseException {
        /*
        Date parse(String source)把符合模式的字符串,解析为Date日期
        1、创建SimpleDateFormat对象,构造方法中传递指定的模式
        2、调用SimpleDateFormat对象中的方法parse,把符合构造方法中模式的字符串解析为Date日期
        注意:
        public Date parse(String source ) throws ParseException
        parse方法声明了一个异常叫ParseException解析异常
        如果字符串和构造方法中的模式不一样,那么程序就会抛出此异常
        调用一个抛出了异常的方法,就必须的处理这个异常,要么throws继续声明抛出这一个异常,要么try ...catch自己处理这个异常
         */
        SimpleDateFormat si1 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        //parse处出错,Alt+Enter 添加异常到方法签名 (使用try/catch环绕也可以)
        Date d1 = si1.parse("2021-07-25 19:00:22");
        System.out.println(d1);//Sun Jul 25 19:00:22 CST 2021
    }
}
最后修改:2021 年 08 月 06 日
如果觉得我的文章对你有用,请随意赞赏