Date类与DateFormat类的用法

文章目录

  • Date类与DateFormat类的用法
    • Date类
      • 概述
      • 常用方法
    • DateFormat类
      • 概述:
      • SimpleDateFormat的构造方法:
      • 常用方法
      • 试题

Date类

概述

Date类:表示特定的瞬间,精确到毫秒。

构造方法:

Date():根据当前的默认毫秒值创建日期对象

Date(long date):根据给定的毫秒值创建日期对象

public class Test {public static void main(String[] args) {// 创建对象Date d = new Date();System.out.println("d:" + d);  // 结果是:d:Wed Mar 01 19:19:12 CST 2017// 创建对象// long time = System.currentTimeMillis();long time = 1000 * 60 * 60; // 1小时Date d2 = new Date(time);System.out.println("d2:" + d2);  // 结果是:d2:Thu Jan 01 09:00:00 CST 1970}
}

常用方法

Date类成员方法

getTime() :从Date得到一个毫秒值

setTime(long time):把一个毫秒值转换为Date

public class DateDemo {public static void main(String[] args) {// 创建对象Date d = new Date();// 获取时间long time = d.getTime();System.out.println(time);// System.out.println(System.currentTimeMillis());System.out.println("d:" + d);// 设置时间d.setTime(1000);System.out.println("d:" + d);}
}

DateFormat类

概述:

针对日期进行格式化和针对字符串进行解析的类,

Date    -->     String(格式化)
String  -->     Date(解析)

但是DateFormat类是抽象类,所以使用其子类SimpleDateFormat

SimpleDateFormat的构造方法:

SimpleDateFormat():默认模式
SimpleDateFormat(String pattern):给定的模式

这个模式字符串该如何写呢?
通过查看API,我们就找到了对应的模式

年 y
月 M
日 d
时 H
分 m
秒 s

例如:
2014年12月12日 12:12:12的模式为:
yyyy年MM月dd日 HH:mm:ss

常用方法

实现Date – String的快速转化

  1. public final String format(Date date) : 将给定的 Date 格式化为日期/时间字符串。
  2. public Date parse(String source) : 解析字符串的文本,生成 Date。
public class DateFormatDemo {public static void main(String[] args) throws ParseException {// Date -- String// 创建日期对象Date d = new Date();// 创建格式化对象// SimpleDateFormat sdf = new SimpleDateFormat();// 给定模式SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss");// public final String format(Date date)String s = sdf.format(d);System.out.println(s);//String -- DateString str = "2008-08-08 12:12:12";//在把一个字符串解析为日期的时候,请注意格式必须和给定的字符串格式匹配SimpleDateFormat sdf2 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");Date dd = sdf2.parse(str);System.out.println(dd);}
}

试题

用DateFormat算一下你来到这个世界多少天?

(不推荐用这样的方法,下一节讲解 日历类)

分析:

  • A:键盘录入你的出生的年月日
  • B:把该字符串转换为一个日期
  • C:通过该日期得到一个毫秒值
  • D:获取当前时间的毫秒值
  • E:用D-C得到一个毫秒值
  • F:把E的毫秒值转换为年。除以( /1000/60/60/24 )
public class MyYearOldDemo {public static void main(String[] args) throws ParseException {// 键盘录入你的出生的年月日Scanner sc = new Scanner(System.in);System.out.println("请输入你的出生年月日:");String line = sc.nextLine();// 把该字符串转换为一个日期SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");Date d = sdf.parse(line);// 通过该日期得到一个毫秒值long myTime = d.getTime();// 获取当前时间的毫秒值long nowTime = System.currentTimeMillis();// 用D-C得到一个毫秒值long time = nowTime - myTime;// 把E的毫秒值转换为年long day = time / 1000 / 60 / 60 / 24;System.out.println("你来到这个世界:" + day + "天");}
}

Date类与DateFormat类相关推荐

  1. JAVA基础再回首(十三)——BigInteger类、BigDecimal类、Date类、DateFormat类、Calendar类

    JAVA基础再回首(十三)--BigInteger类.BigDecimal类.Date类.DateFormat类.Calendar类 版权声明:转载必须注明本文转自程序员杜鹏程的博客:http://b ...

  2. date类、calendar类与dateformat类

    在Java程序中,针对Java.util.date.Java.util.calendar和Java.text.dateformat 在jdk的有提供两个构造方法, 一个是无参数的构造方法Date() ...

  3. java——Object类、Date类、DateFormat类、Calendar类、包装类

    Object类 java.lang.Object类是Java语言中的根类,即所有类的父类.它中描述的所有方法子类都可以使用.在对象实例化的时候,最终找的父类就是Object. 如果一个类没有特别指定父 ...

  4. 【Java基础】Date类、DateFormat类

    目录 一.Date类 二.DateFormat类 1.format方法 2.parse方法 一.Date类 data:翻译成中文是"日期"的意思. 在Java里面Data类表示特定 ...

  5. Java的知识点22——时间处理相关类、Date时间类(java.util.Date)、DateFormat类和SimpleDateFormat类、Calendar日历类

    时间处理相关类 用long类型的变量来表示时间,获得现在时刻的"时刻数值":long now = System.currentTimeMillis(); Date时间类(java. ...

  6. java dateformat类_java Date类 DateFormat类 SimpleDateFormat类

    Dateformat 是抽象类  ,抽象类不能直接实例化对象, 它的构造函数是protected , 可由子类继承,用于构造子类对象 DateFormat  df1= DateFormat.getDa ...

  7. dateformat java_java中Dateformat类的详细使用(详解)

    DateFormat其本身是一个抽象类,SimpleDateFormat 类是DateFormat类的子类,一般情况下来讲DateFormat类很少会直接使用,而都使用SimpleDateFormat ...

  8. java中Date类、DateFormat及SimpleDateFormat简介

    Date类: Date类表示日期和时间,精确到毫秒(千分之一秒)位于java.util.Date下.日期是可以计算的,其本质是利用毫秒值进行计算,任何一个时间点都可以转换为毫秒值,毫秒值表示一个瞬间. ...

  9. String类 Object类 System类 Math类 Date类 Calendar类 DateFormat类

    API 全称Application Programming Interface,即应用程序编程接口. API是一些预先定义函数,目的是用来提供应用程序与开发人员基于某软件或者某硬件得以访问一组例程的能 ...

  10. Java 常用对象-Date类和Calender类

    2017-11-02 22:29:34 Date类:类 Date 表示特定的瞬间,精确到毫秒. 在 JDK 1.1 之前,类 Date 有两个其他的函数.它允许把日期解释为年.月.日.小时.分钟和秒值 ...

最新文章

  1. 克服拖延的11种方法
  2. Indri和Terrier搜索引擎的使用
  3. centos6.8 安装mysql_Centos6.8通过yum安装mysql5.7
  4. DbgPrint 格式字符串
  5. HDU 5439 Aggregated Counting
  6. java 线程安全list_JAVA并发编程实战-线程安全性
  7. java触发器如何创建表_Java中 创建Oracle触发器的问题。
  8. SSH key的生成及使用
  9. win7 exfat补丁_大神面对 win7系统安装补丁提示安装程序出错的操作方案 -win7系统使用教程...
  10. win10系统托盘图标不见了_win10托盘图标不显示怎么回事_win10任务栏托盘图标显示不完全如何修复...
  11. Gambit 2.Gambit解释器
  12. VLAN及VLAN城域网规划
  13. 贝叶斯分析好坏_高人进,关于贝叶斯估计的几个重要问题!
  14. easypoi excel:Cannot add merged region X to sheet because it overlaps with an existing merged region
  15. 性能强大的家庭服务器,家庭服务器解决方案——硬件篇
  16. VS2010 旗舰版序列号
  17. 这是互联网变得越来越敌对的7种方式
  18. 解决Host key verification failed.
  19. 计算机启动不能马上联网,电脑开机慢不能联网
  20. 商务谈判中有哪些谈判技巧?

热门文章

  1. 机器学习和深度学习概念入门
  2. 注册验证python_Python登录注册验证功能实现
  3. PMP课程学习第五天
  4. cad文字递增快捷键_AutoCAD常用快捷键命令大全(文字版)
  5. 持续交付+springboot+k8s
  6. 李沐-动手学深度学习
  7. 手机内置摄像头接线图解_1000以下手机哪款好?8款千元以内性价比最高的手机推荐...
  8. 自己做量化交易软件(42)小白量化实战15--自编股票软件公式历史与聚宽量化平台仿大智慧指标回测设计
  9. python第三方库:chardet字符编码检测和乱码处理
  10. ssh远程连接Ubuntu 20.04