06.SimpleDateFormat的概述和功能测试

DateFormat类 & SimpleDateFormat

DateFormat 是日期/时间格式化子类的抽象类,它以与语言无关的方式格式化并解析日期或时间。日期/时间格式化子类(如 SimpleDateFormat类)
允许进行格式化(也就是日期 -> 文本)、解析(文本-> 日期)和标准化。
我们通过这个类可以帮我们完成日期和文本之间的转换。
继续阅读API,DateFormat 可帮助进行格式化并解析任何语言环境的日期。对于月、星期,甚至日历格式(阴历和阳历),其代码可完全与语言环境的约定无关。

DateFormat&SimpleDateFormat的常用方法

要格式化一个当前语言环境下的日期也就是日期 -> 文本),要通过下面的方法来完成。DateFormat是抽象类,我们需要使用其子类SimpleDateFormat来创建对象。

  • A:SimpleDateFormat构造方法
无参构造
带参构造
  • B:DateFormat类方法


    image.png
package com.itheima_04;

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

/*
 * SimpleDateFormat:
 *      格式化:
 *          Date --- String
 *          2018-8-26 2018年8月26日
 *          String format(Date date)
 *      解析:
 *          String  ---  Date
 *          "2018-8-26"
 *           Date parse(String source) 
 * 
 *  构造方法
 *      SimpleDateFormat() :使用的默认的模式进行对象的构建
 *      SimpleDateFormat(String pattern) :使用的是指定的模式进行对象的构建
 *  
 *  注意:Exception in thread "main" java.text.ParseException: Unparseable date: "18年8月26日 下午8:16"
 *      解析的字符串,模式必须和构建对象的模式一样
 */
public class SimpleDateFormatDemo {
    public static void main(String[] args) throws ParseException {
//      method();
//      method2();
        //使用默认模式进行对象的构建
        //1999年9月1日 10:10:10
        //4个小姨2个大美眉和2个小弟弟
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss");
        
        //格式化
        Date date = new Date();
        String s = sdf.format(date);
        System.out.println(s);//2018年10月10日 20:30:28
        
        //解析
        Date d = sdf.parse("2018年10月10日 20:30:28");
        System.out.println(d.toLocaleString());
    }

    private static void method2() throws ParseException {
        //使用指定的模式进行对象的构建
        //1999年9月1日
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日");
        //格式化
        Date date = new Date();
        String s = sdf.format(date);
        System.out.println(s);
        
        //解析
        Date d = sdf.parse("2018年08月26日");
        System.out.println(d.toLocaleString());
    }

    private static void method() throws ParseException {
        //使用默认模式进行对象的构建
        SimpleDateFormat sdf = new SimpleDateFormat();
        //创建日期对象
        Date date = new Date();
        //格式化 把日期对象转换成字符串
        String s = sdf.format(date);
        System.out.println(s);//18-8-26 下午8:16
        
        //解析 把字符串转换成日期对象
        Date d = sdf.parse("18年8月26日 下午8:16");
        System.out.println(d.toLocaleString());
    }
}

你可能感兴趣的:(06.SimpleDateFormat的概述和功能测试)