SimpleDateFormat日期处理类
为了可以格式化日期,在java.text包中提供了SimpleDateFormat程序类。
SimpleDateFormat继承自DateFormat类,是个抽象类。
DateFormat 继承自Format,也是个抽象类。
提供了如下的方法:
DateFormat格式化处理
构造方法:public SimpleDateFormat(String pattern)
日期格式 年yyyy月MM日dd时HH分mm秒ss毫秒SSS
package test;
import java.text.SimpleDateFormat;
import java.util.Date;
public class Demo42 {
public static void main(String[] args) {
Date date = new Date();
SimpleDateFormat tim = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS");
String str = tim.format(date);
System.out.println(str);
}
}
2019-12-21 03:56:38.105
除了将日期格式化为字符串,也可以实现字符串与日期之间的转换。
讲字符串日期转为Date
package test;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
public class Demo42 {
public static void main(String[] args) throws Exception {
String birthday = "1899-11-11 11:11:11.123";
SimpleDateFormat tim = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS");
Date date = tim.parse(birthday);
System.out.println(date);
}
}
Sat Nov 11 11:11:11 CST 1899
如果指定的时间超出了范围,会自动进行进位处理,
如果将1899-11-11 11:11:11.123改为1899-11-11 11:11:71.123
按理说会进位一分钟,我们可以看下结果
package test;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
public class Demo42 {
public static void main(String[] args) throws Exception {
String birthday = "1899-11-11 11:11:71.123";
SimpleDateFormat tim = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS");
Date date = tim.parse(birthday);
System.out.println(date);
}
}
Sat Nov 11 11:12:11 CST 1899