日期和毫秒转换
java日期和毫秒值的相互转化
1.日期转毫秒
使用getTime()方法就可以轻松获取到date类型的毫秒值。注意该Date是util下的。
Date date = new Date();
long l = date.getTime();
2.毫秒转日期
Date date = new Date();
date2.setTime(1548831395065l); //注意此处毫秒值应该加上l,表示long型数据,否则报错
//补充:获取当前系统时间的毫秒值:
System.currentTimeMillis();
new Date.getTime();
3.日期的格式化
方法一:(常用的)需要将日期转为yyyy-MM-dd格式的
使用DateFormat的format方法即可
DateFormat dateFormat = DateFormat.getDateInstance();
String format = dateFormat.format(date);
方法二:使用simpleDateFormat
一般自己写一个类DateUtil封装好一些格式化日期的方法,simpleDateFormat可以将日期格式化成任意格式的。
/**
SimpleDateFormat函数语法:
G 年代标志符
y 年
M 月
d 日
h 时 在上午或下午 (1~12)
H 时 在一天中 (0~23)
m 分
s 秒
S 毫秒
E 星期
D 一年中的第几天
F 一月中第几个星期几
w 一年中第几个星期
W 一月中第几个星期
a 上午 / 下午 标记符
k 时 在一天中 (1~24)
K 时 在上午或下午 (0~11)
z 时区
*/
//第一步:创建simpleDateFormat对象,并指定格式
SimpleDateFormat myFormat=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
//第二步:使用创建好的myFormat对象的format方法
//注意:返回的是String类型的
String myDate = myFormat.format(new Date());
4.Calendar类 (日期类)
Calendar不能直接new,但是可以通过getInstance获取实例
使用场景:Calendar可以很方便的获取单独的年、月、日等单独的数据。当需要单独对某个日期的某个具体时间进行操作时使用。也可配合simpleDateFormat使用。
Calendar calendar = Calendar.getInstance();
//通过getTime方法获得日期对象
Date time = calendar.getTime();
//Calendar有很多对日期操作的方法:
add():在原日期上增加年/月/日
set():直接设置年/月/日
before():判断是否在该日期之前
after():判断是否在该日期之后
compareTo():日期对比