SimpleDateFormat的使用:SimpleDateFormat是对日期Date类的格式化和解析的类
①当使用默认构造器进行SimpleDateFormat的实例化,按照默认的方式格式化和解析:SimpleDateFormat sdf = new SimpleDateFormat();
两个操作:
->格式化:日期—>字符串
Date d1 = new Date();
String s2 = sdf.format(d1);
System.out.println(s2);//输出的是中文:2022/8/22 下午7:42
->解析:格式化的逆过程,字符串—>日期
String s3="2022/9/27 上午11:20";//字符串必须是这种格式,如果不是这种格式,会抛"ParseException"异常
Date d2=sdf.parse(s3);
System.out.println(d2);//此时输出的就又是Tue Sep 27 11:20:00 CST 2022
②当调用带参构造器进行SimpleDateFormat的实例化,按照指定的方式格式化和解析:SimpleDateFormat sdf2 = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
其中,yyyy代表4位数是年份,MM代表2位数的月份,dd代表2位数的日期,hh代表2位数的小时,mm代表2位数的分钟,ss代表2位数的秒
当然构造器的参数还有其他格式,如"yyyyy.MMMMM.dd GGG hh:mm:aaa"输出的格式是"02001.July.04 AD 12:08 PM"等等,具体可见java API
两个操作:
->格式化:日期—>字符串
String s4 = sdf2.format(d1);//输出2022-08-22 07:55:07,
//这个格式和构造器中的参数类型是相同的
->解析:格式化的逆过程,字符串—>日期
Date d3 = sdf2.parse("2021-05-05 2:12:12");//要求字符串必须符合
//SimpleDateFormat的构造器的参数格式,否则会抛异常,
//输出为Wed May 05 02:12:12 CST 2021