本篇博客主要以介绍Date类的常用方法及常用源码(日期转化),测量前后代码运行时间
Date是java中专门针对日期的类。除此之外还有接口Calendar,SimpleDateFormat类(日期格式化)等等来解决java中日期的记录与表达,测量前后代码运行时间。
构造方法 | 方法内容介绍 |
---|---|
Date() | 返回当前时间【Sat Mar 18 18:20:32 CST 2023】 |
Date(long date) | 记录date的时间 |
常用方法 |
方法内容介绍 |
boolean after(Date when) | 判断此日期是否在指定日期之后 |
boolean before(Date when) | 判断此日期是否在指定日期之前 |
long getTime() | 【毫秒差】返回自1970年1月1日以来至今的毫秒差(长整形) |
void setTime(long time) | 记录date的时间【相当于 Date(long date)构造方法】 |
需要子类:GregorianCalendar直接子类
构造方法 | 方法内容介绍 |
---|---|
SimpleDateFormat(String pattern) | 【创建日期格式化对象】 |
常用方法 |
方法内容介绍 |
getTimeZone() | 【获取时区】 |
g.getTime() | 【返回Date类型】 |
getTimeInMillis() | 【返回长整形的毫秒差】 |
get(Calendar.常量) | 【返回要求的时间如:今天为本月的哪一天…】 |
构造方法 | 方法内容介绍 |
---|---|
SimpleDateFormat(String pattern) | 【创建日期格式化对象–r日期规则】 |
常用方法 |
方法内容介绍 |
Date parse(“日期字符串”) | 【将日期字符串返回Date类型】 |
String format(new Date()) | 【将Date按照日期规则返回日期字符串】 |
/*
* 将年月日字符串转成Date
* 格式 yyyy-MM-dd
* */
public static Date stringToDate(String strToDate)throws ParseException{
SimpleDateFormat format=new SimpleDateFormat("yyyy-MM-dd");
return format.parse(strToDate);
//将年月日字符串转化为date类型
}
/*
* 将年月日字符串转成Date
* 格式 yyyy-MM-dd HH:mm:ss
* */
public static Date stringToDate(String strToDate)throws ParseException{
SimpleDateFormat format=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
//制定格式规范: yyyy年MM月dd日 HH:mm:ss(秒)
return format.parse(strToDate);
//将年月日字符串转化为date类型
}
/*
* 将Date(当前时间)转成年月日字符串
* */
public static String dateToString(Date date){
SimpleDateFormat f=new SimpleDateFormat("yyyy-MM-dd");
//制定格式规范: yyyy年MM月dd日 HH:mm:ss(秒) yyyy-MM-dd
return f.format(date);
//将date类型转化为年月日字符串
}
/*
* 将Date(当前时间)转成年月日字符串
* */
public static String dateToString(Date date){
SimpleDateFormat f=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
//制定格式规范: yyyy年MM月dd日 HH:mm:ss(秒) yyyy-MM-dd HH:mm:ss
return f.format(date);
//将date类型转化为年月日字符串
}
/*
* 将Date.getTime()(长整形——毫秒差)转成年月日字符串
* */
public static String LongToString(long getTime){
SimpleDateFormat f=new SimpleDateFormat("yyyy-MM-dd");
//制定格式规范: yyyy年MM月dd日 HH:mm:ss(秒):SSS(毫秒)
//将毫秒差转换为date类型
return f.format(new Date(getTime));//对date类型格式化
}
}
/*
* 将Date.getTime()(长整形——毫秒差)转成年月日字符串
* */
public static String LongToString(long getTime){
SimpleDateFormat f=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
//制定格式规范: yyyy年MM月dd日 HH:mm:ss(秒):SSS(毫秒)
//将毫秒差转换为date类型
return f.format(new Date(getTime));//对date类型格式化
}
}
long start_ms = new Date().getTime();//获取拼接前时间
//代码测试区....
//代码测试区....
//代码测试区....
SimpleDateFormat f=new SimpleDateFormat("mm分钟ss秒SSS毫秒");
long end_ms = new Date().getTime();//获取拼接后时间
String result= f.format(new Date(end_ms-start_ms));
System.out.println(result);