JAVA06_Date概述及方法SimpleDateForma时间转字符字符转时间详解
Posted 所得皆惊喜
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JAVA06_Date概述及方法SimpleDateForma时间转字符字符转时间详解相关的知识,希望对你有一定的参考价值。
文章目录
①. Date概述及方法
-
①. Date类的概述是util包下的,不能导入sql包下的,类Date表示特定的瞬间,精确到毫秒
-
②. 构造方法
- public Date():空参构造,是当前时间
- public Date(long l):有参构造,从1970开始指定的毫秒数
//如果没有传递参数表示的是当前时间
Date date1=new Date();
System.out.println("date1 = " + date1);//date1 = Tue Jul 02 16:21:31 CST 2019
//如果构造方法中传递的参数是0,代表的1970年1月1日
Date date2=new Date(0);
System.out.println("date2 = " + date2);//date2 = Thu Jan 01 08:00:00 CST 1970
- ③. 成员方法
- public long getTime():获得的是日期对象从1970年1月1日00:00:00到现在的毫秒值
- public void setTime():设置时间,给的是毫秒值
Date date1=new Date();
long time = date1.getTime();
long systemTime = System.currentTimeMillis();
//大多数情况下time 和 systemTime 是一样的,相差的时间间隙太小了
System.out.println("通过时间对象获取毫秒值"+time);//1562763852244
System.out.println("通过系统方法获取毫秒值"+systemTime);//1562763852245
System.out.println("--------");
Date dat2=new Date();
dat2.setTime(1000);//设置豪秒值,改变时间对象
System.out.println(dat2);// Thu Jan 01 08:00:01 CST 1970
②. SimpleDateForma
-
①. DateFormat是一个抽象类,不能被被实例化,是SimpleDateFormat的父类
-
②. SimpleDateFormat的构造函数
- SimpleDateFormat()
- SimpleDateFormat(String pattern)
- ③. 将日期对象转成字符串:public final String format(Date date)
//获取当前时间对象
Date d1=new Date();
//创建日期格式化类对象
SimpleDateFormat sdf=new SimpleDateFormat();
String format = sdf.format(d1);
System.out.println(format);//2019/7/10 下午9:14
//将日期对象转换成字符串
//获取当前时间对象
Date d1=new Date();
//创建日期格式化类对象
//SimpleDateFormat sdf=new SimpleDateFormat("yyyy年MM月dd HH:mm:ss");//2019年07月10 21:18:48
SimpleDateFormat sdf=new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");//2019/07/10 21:19:28
System.out.println(sdf.format(d1));
- ④. 将字符串转为日期对象:public Date parse(String source)
//将时间字符串转成日期对象
String str="2000年08月08日08:08:08";
SimpleDateFormat sdf=new SimpleDateFormat("yyyy年MM月dd日HH:mm:ss");
//将字符串转成日期对象
Date d1=sdf.parse(str);
System.out.println(d1);//Tue Aug 08 08:08:08 CST 2000
//计算出你活了多少天
//1.将生日字符串和今天字符串存在String类型的变量中
String strBir="1996年02月11日08:08:08";
String strNow="2019年07月10日08:08:08";
//2.定义日期格式化对象
SimpleDateFormat sdf=new SimpleDateFormat("yyyy年MM月dd日HH:mm:ss");
//3.将日期字符串转成日期对象
Date dBir=sdf.parse(strBir);
Date dNow=sdf.parse(strNow);
//4.通过日期对象获取毫秒值
long time=dNow.getTime()-dBir.getTime();
System.out.println("你再世界上活了"+time/(1000*60*60*24));
- ⑤. 工具类:构造方法私有、成员方法静态
public class DateUtils
private DateUtils()
//将日期转化为指定格式的字符串
public static String dateToString(Date date,String format)
SimpleDateFormat sdf=new SimpleDateFormat(format);
String s=sdf.format(date);
return s;
//把字符串解析为指定格式的日期
public static Date stringToDate(String str,String format) throws ParseException
SimpleDateFormat sdf=new SimpleDateFormat(format);
Date date=sdf.parse(str);
return date;
public class DateDemo
public static void main(String[] args)throws Exception
//1.测试将日期转成字符串
Date d=new Date();
String format="yyyy年MM月dd日 HH:mm:ss";
String string=DateUtils.dateToString(d,format);
System.out.println(string);//2019年07月16日 15:07:05
//2.测试将字符串转成日期
String str="2019-7-16 08-08-08";
String format2="yyyy-MM-dd HH-mm-ss";
Date date=DateUtils.stringToDate(str,format2);
System.out.println(date);//Tue Jul 16 08:08:08 CST 2019
以上是关于JAVA06_Date概述及方法SimpleDateForma时间转字符字符转时间详解的主要内容,如果未能解决你的问题,请参考以下文章