JAVA06_Date概述及方法SimpleDateForma时间转字符字符转时间详解

Posted 所得皆惊喜

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JAVA06_Date概述及方法SimpleDateForma时间转字符字符转时间详解相关的知识,希望对你有一定的参考价值。

文章目录

①. Date概述及方法

  • ①. Date类的概述是util包下的,不能导入sql包下的,类Date表示特定的瞬间,精确到毫秒

  • ②. 构造方法

  1. public Date():空参构造,是当前时间
  2. 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
  • ③. 成员方法
  1. public long getTime():获得的是日期对象从1970年1月1日00:00:00到现在的毫秒值
  2. 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的构造函数

  1. SimpleDateFormat()
  2. 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时间转字符字符转时间详解的主要内容,如果未能解决你的问题,请参考以下文章

JAVA07_Calendar的概述Date的互转常量字段常用方法

JAVA06_Optional类概述初始化常用方法最佳实践

JAVA06_Optional类概述初始化常用方法最佳实践

Date 工具类(包含常用的一些时间方法)

java类Date类概述及其方法

Java期末考试试题及参考答案(06)