日期操作
Date date = new Date();
System.out.println(date);// Tue Jul 18 00:02:32 CST 2023
从源码的构造方法上来看,其实Date
就是对于long类型的一种包装,所以 date 类中一定提供所谓的日期与 long 数据类型之间转换的方法:
- 将 long 转为日期:
public date(long date);
- 将 Date 转为
long:public long getTime();
Date date = new Date();
long current = date.getTime() + 864000 * 1000; // 毫秒
System.out.println(new Date(current));
上述为10天之后的日期
long 之中可以保存毫秒的数据级,这样方便程序处理。
SimpleDateFormat 日期处理类
日期格式化
虽然 date 可以获取当前的日期时间,但是默认情况下 Date 类输出的日期结构并不能够被国人所习惯,那么现在就需要对显示的格式进行格式化处理,为了可以格式化日期,在 java.text 包中提供有 SimpleDateFormat 程序类。
-
【DateFormat】将日期格式化:
public final String format(Date date);
-
【DateFormat继承】将字符串转为日期:
public Date Formarse(String source)throwsParseException;
-
构造方法:
public SimpleDateFormat(String pattern)
- 日期格式:年(yyyy)、月(MM)、日(dd)、时(HH)、分(mm)、秒(ss)、毫秒(SSS);
Date date = new Date();
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss:sss");
System.out.println(simpleDateFormat.format(date));
除了日期转换为字符串,也可以将字符串转换为日期
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss:sss");
String data = "1998-5-20 19:20:20:123";
Date parse = simpleDateFormat.parse(data);
System.out.println(parse); // Wed May 20 19:22:03 CST 1998
如果在进行字符串定义的时候,所使用的日期时间数字超过了指定的合理范围,则会自动进行进位处理。
PS:知识总结于阿里培训中心