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

有2种方法可以创建Date对象(这里不考虑已过时的构造函数)

1、public Date()——分配 Date 对象并初始化此对象,以表示分配它的时间(精确到毫秒)。

 @Test
public void test1() {
Date date = new Date();
System.out.println(date);
}
Sun Oct 23 22:39:14 CST 2016

2、public Date(long date)——根据给定的毫秒值创建日期对象。

 @Test
public void test2() {
long time = System.currentTimeMillis();
Date date = new Date(time);
System.out.println(date);
}
Sun Oct 23 22:41:42 CST 2016

介绍完了Date的构造函数后,接下来来看看日期与毫秒值的相互转换

1、public long getTime()——日期转毫秒值

通过getTime方法可以将一个日期类型转换为long类型的毫秒值

 @Test
public void test3() {
Date date = new Date();
System.out.println(date.getTime());
}
1477234414353

2、public void setTime(long time)——毫秒值转日期

 @Test
public void test4() {
long time = System.currentTimeMillis();
Date date = new Date();
date.setTime(time);
System.out.println(date);
}
Sun Oct 23 22:53:05 CST 2016

当然也可以通过构造函数public Date(long date)将毫秒值转为日期类型。

通常我们会比较2个日期的大小,Date类提供以下方法用来比较2个日期的相关操作

1、public boolean before(Date when)——测试此日期是否在指定日期之前,当且仅当此Date对象表示的瞬间比when表示的瞬间早,才返回true;否则返回false。

 @Test
public void test5() {
Date date1 = new Date(1000);
Date date2 = new Date(2000);
System.out.println(date1.before(date2));
}
true

2、public boolean after(Date when)——测试此日期是否在指定日期之后,当且仅当此Date对象表示的瞬间比when表示的瞬间晚,才返回true;否则返回false。

 @Test
public void test6() {
Date date1 = new Date(1000);
Date date2 = new Date(2000);
System.out.println(date1.after(date2));
}
false

3、public int compareTo(Date anotherDate)——比较两个日期的顺序。

如果参数Date等于此Date,则返回值0;如果此Date在Date参数之前,则返回小于0的值;如果此Date在Date参数之后,则返回大于0的值。

 @Test
public void test7() {
Date date1 = new Date(1000);
Date date2 = new Date(2000);
System.out.println(date1.compareTo(date2));
}
-1

Java Date类的使用总结的更多相关文章

  1. JAVA Date类与Calendar类【转】

    Date类 在JDK1.0中,Date类是唯一的一个代表时间的类,但是由于Date类不便于实现国际化,所以从JDK1.1版本开始,推荐使用Calendar类进行时间和日期处理.这里简单介绍一下Date ...

  2. java date类型和calendar类型区别

    Date类 在JDK1.0中,Date类是唯一的一个代表时间的类,但是由于Date类不便于实现国际化,所以从JDK1.1版本开始,推荐使用Calendar类进行时间和日期处理.这里简单介绍一下Date ...

  3. learning java Date类

    var d1 = new Date(); var d2 = new Date(System.currentTimeMillis() + 1000); System.out.println(d1); S ...

  4. Java 时间类-Calendar、Date、LocalDate/LocalTime

    1.Date 类 java.util.Date是一个"万能接口",它包含日期.时间,还有毫秒数,如果你只想用java.util.Date存储日期,或者只存储时间,那么,只有你知道哪 ...

  5. java学习第13天( java获取当前时间,有关大数据的运算及精确数字运算,Date类)

    一 java获取当前时间 学习一个函数,得到当前时间的准确值 System.currectTimeMillis(). 可以得到以毫秒为单位的当前时间.它主要用于计算程序运行时间,long start= ...

  6. Java api 入门教程 之 JAVA的Date类与Calendar类

    在JDK1.0中,Date类是唯一的一个代表时间的类,但是由于Date类不便于实现国际化,所以从JDK1.1版本开始,推荐使用Calendar类进行时间和日期处理. 一.这里简单介绍一下Date类的使 ...

  7. 疯狂java笔记(五) - 系统交互、System、Runtime、Date类

    一.程序与用户交互(Java的入口方法-main方法): 运行Java程序时,都必须提供一个main方法入口:public static void main(String[] args){} publ ...

  8. JAVA的Date类与Calendar类【转】

    Date类 在JDK1.0中,Date类是唯一的一个代表时间的类,但是由于Date类不便于实现国际化,所以从JDK1.1版本开始,推荐使用Calendar类进行时间和日期处理.这里简单介绍一下Date ...

  9. Java基础(38):Calendar类的应用(优于Date类)

    Calendar 类的应用 Date 类最主要的作用就是获得当前时间,同时这个类里面也具有设置时间以及一些其他的功能,但是由于本身设计的问题,这些方法却遭到众多批评,不建议使用,更推荐使用 Calen ...

随机推荐

  1. 【hdu2000】ASCII码排序

    题目来源:www.acm.hdu.edu.cn 题目编号:2000 ASCII码排序 /*----------------------------------------原题目------------ ...

  2. day17_雷神_数据库 小全

    # 数据库 1.mysql 介绍 一 数据库管理软件的由来 程序的所有组件不可能只在一个机子上,性能问题和单点故障, 程序分散了,还需要解决数据共享问题, 基于网络访问这台共享的机器,用socket. ...

  3. Visualizing the Git data model

    I wrote a small tool git-graph.py over the weekend which can be used to generate the object graph of ...

  4. Chrome部分站点无法启用Flash问题

    ## 69.0之前 ## 1. 打开 chrome://settings/content/flash 2. 禁止网站运行Flash -> 改为“先询问(推荐)” 3. 允许->添加 4. ...

  5. Windows Server 2012 NTP时间同步

    非域环境下有外网连接情况的时间同步 1. 打开组策略,Powershell键入命令:gpedit.msc 2. 在计算机策略对话框中,打开如下路径:计算机配置/管理模板/系统/Windows时间服务/ ...

  6. python爬虫学习之使用BeautifulSoup库爬取开奖网站信息-模块化

    实例需求:运用python语言爬取http://kaijiang.zhcw.com/zhcw/html/ssq/list_1.html这个开奖网站所有的信息,并且保存为txt文件和excel文件. 实 ...

  7. Python编程练习:编程实现恺撒密码

    问题描述:凯撒密码是古罗马凯撒大帝用来对军事情报进行加解密的算法,它采用了替换方法对信息中的每一个英文字符循环替换为字母表序列中该字符后面的第三个字符,即,字母表的对应关系如下: 原文:A B C D ...

  8. 【渗透技术】渗透测试技术分析_TomCat

    [渗透技术]渗透测试技术分析_TomCat 本文转自:i春秋论坛 渗透测试-中间人攻击(原理)说起“中间人攻击”我想大多数对渗透测试又了解的朋友都多少有所了解,因为我们用到的次数真是非常的多.它可以将 ...

  9. Kali学习笔记21:缓冲区溢出实验(漏洞发现)

    上一篇文章,我已经做好了缓冲区溢出实验的准备工作: https://www.cnblogs.com/xuyiqing/p/9835561.html 下面就是Kali虚拟机对缓冲区溢出的测试: 已经知道 ...

  10. mybatis 中的 xml 配置文件中 ‘<’、 ‘>’ 处理

    mybatis 中的 xml 配置文件中 '<'. '>' 处理 1.使用转义字符将 '<'. '>' 替换掉. 描述 字符 转义字符 小于号 < < 大于号 &g ...