一、Date时间类

计算机中 以1970 年 1 月 1 日 00:00:00定为基准时间,每个度量单位是毫秒(1秒的千分之一)

用ong类型的变量来表示时间,如当前时刻数值:long  now =new System.currentTimeMillis();

【常用方法】

1. Date() 分配一个Date对象,并初始化此对象为系统当前的日期和时间,可以精确到毫秒。

2. Date(long date) 分配 Date 对象并初始化此对象,以表示自从标准基准时间(称为“历元(epoch)”,即 1970 年 1 月 1 日 00:00:00 GMT)以来的指定毫秒数。

3. boolean after(Date when)  测试此日期是否在指定日期之后。

4. booleanbefore(Date when)  测试此日期是否在指定日期之前。

5. boolean equals(Object obj)   比较两个日期的相等性。

6. long getTime() 返回自 1970 年 1 月 1 日 00:00:00 GMT 以来此 Date 对象表示的毫秒数。

7. String toString() 把此 Date 对象转换为以下形式的 String: dow mon dd hh:mm:ss zzz yyyy 其中: dow 是一周中的某一天 (Sun、 Mon、Tue、Wed、 Thu、 Fri、 Sat)。

【代码示例】

 /**
* 测试时间类
*/
package cn.sxt.test; import java.util.Date;
public class Test_0316_DateClass {
public static void main(String[] args) {
Date date=new Date();//根据Java源码可看出,如果这个构造Date类,什么参数都不传,会输出当前时刻的时间
System.out.println(date); Date date2=new Date(2000); //这个Date类传进去参数为2000(毫秒),会输出从1970年1月1日00:00 起经过2000毫秒后的时刻
System.out.println(date2);//由于中国位于东八区 会在输出时刻的基础上加8个小时(此函数以格林威治时间为标准) 输出8:00:02 System.out.println(date.getTime());//getTime()从基准时刻算起,获得当前时刻的毫秒数
System.out.println(date2.getTime()); System.out.println(date.after(date2));//判断对象date时刻是否在对象date2时刻之后
System.out.println(date.before(date2));//判断对象date时刻是否在对象date2时刻之前 } }

二、DateFormat类 (时间格式化类)

把时间对象转化成指定格式的字符串。反之,把指定格式的字符串转化成时间对象。

DateFormat是一个抽象类,一般使用它的的子类SimpleDateFormat类来实现。

【代码示例】

 /*
*测试时间对象和字符串之间的相互转化
* DateFormat类 时间格式类 是个抽象类
*/
package cn.sxt.test; import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
public class Test_0316_DateFormatClass {
public static void main(String[] args) throws ParseException { //抽象类DateFormat不能通过new一个对象 而是通过实现类SimpleDateFormat来new 一个对象 //"把时间对象按照格式字符串输出 " 格式化输出日期 年(年是4位数字,用4个y)月(月2位,2个M)日(日2位,2个d) 以下同理
DateFormat dFormat = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
DateFormat dFormat1 = new SimpleDateFormat("yyyy年MM月dd日 hh时mm分ss秒 ");//yyyy等是特殊标记不要变,其它自定义 String str=dFormat.format(new Date());//new Date() 当前时间的一个对象;dFormat.format()按照自定义的格式输出当前时间
System.out.println(str);
System.out.println(dFormat1.format(new Date(4000)));//上面的更加缩写版 表示按格式输出4000毫秒后的时间 //把字符串转成相应的时间对象输出 String str1="2019-10-01 10:00:05";//字符串必须按照时间对象dFormat的("yyyy-MM-dd hh:mm:ss")格式书写才会输出
Date date = dFormat.parse(str1);
System.out.println(date); //测试其它格式
DateFormat dFormat2 = new SimpleDateFormat("2019年第D天,当月的第d天,当月的第F星期,上/下午:a");
System.out.println(dFormat2.format(date)); } }

[19/03/16-星期六] 常用类_Date时间类&DateFormat类的更多相关文章

  1. 常用类一一时间处理相关类一一java.util.Tomezone(java.util.Calendar , java.util.Date , java.text.DateFormat)

    时间处理相关类 时间是一个一维的东东.所以,我们需要一把刻度尺来区表达和度量时间.在计算机世界,我们把1970 年 1 月 1 日 00:00:00定为基准时间,每个度量单位是毫秒(1秒的千分之一). ...

  2. [19/03/17-星期日] 常用类_Calendar日历类&GregorianCalendar公历日历类

    一.概念 Calendar 类是一个抽象类,为我们提供了关于日期计算的相关功能,比如:年.月.日.时.分.秒的展示和计算. GregorianCalendar 是 Calendar 的一个具体子类,提 ...

  3. 使用 Date 和 SimpleDateFormat 类表示时间、Calendar类和Math类

    一. Date 和 SimpleDateFormat类表示时间 在程序开发中,经常需要处理日期和时间的相关数据,此时我们可以使用 java.util 包中的 Date 类.这个类最主要的作用就是获取当 ...

  4. java 常用类库:时间类LocalDate;LocalTime;LocalDateTime;Calendar 类;Date ;

    LocalDate类 LocalDate类代表不带时区的日期,列入2020-12-20.该类提供了静态的now()方法来获取当前的日期.这个类是线程安全的. LocalTime类 代表不带时区的时间, ...

  5. asp.net(C#)常用时间日期处理类

    using System; using System.Data; using System.Configuration; using System.Web; using System.Web.Secu ...

  6. [19/03/31-星期日] IO技术_四大抽象类_字符流( 字符输入流 Reader、 字符输出流 Writer )(含字符缓冲类)

     一.概念 Reader Reader用于读取的字符流抽象类,数据单位为字符. int read(): 读取一个字符的数据,并将字符的值作为int类型返回(0-65535之间的一个值,即Unicode ...

  7. Java常用类之时间类

    JDK8之前日期时间API 1. java.lang.System类 2. java.util.Date类 3. java.text.SimpleDateFormat类 4. java.util.Ca ...

  8. asp.net(C#)实现功能强大的时间日期处理类完整实例

    作者:smartsmile2012 字体:[增加 减小] 类型:转载 时间:2016-06-30我要评论 这篇文章主要介绍了asp.net(C#)实现功能强大的时间日期处理类,封装了针对日期与时间的各 ...

  9. Java ——日期时间 日期时间相关类 随机数 定义类属性时建议使用引用数据类型

    本节重点思维导图 Date对象创建 两个构造函数: Date() ----使用当前日期和时间来初始化对象 Date(long millisec) -----接收一个参数,该参数是从1970年1月1日起 ...

随机推荐

  1. oracle12C--DG 状态集

    一,物理备库 01,状态查询与状态详解 select switchover_status from v$database 02,状态转换到备用数据库 alter database commit to ...

  2. TOJ 1885 Triangles

    Description It is always very nice to have little brothers or sisters. You can tease them, lock them ...

  3. [Scala] Currying

    Currying是一種函數式編程技巧, 指的是把接受多個參數的函數變換成接受一個單一參數的函數. 以一個簡單的例子在Scala中實現.. def f(a:Int, b:Int)={ a+b } //f ...

  4. Spring Security怎样不让默认的ProviderManager清除密码等信息

    <authentication-manager erase-credentials="false"> ... </authentication-manager&g ...

  5. 吴恩达《Machine Learning Yearning》总结(31-40章)

    31.解读学习曲线:其他情况 下图反映了高方差,通过增加数据集可以改善. 下图反映了高偏差和高方差,需要找到一种方法来同时减少方差和偏差. 32.绘制学习曲线 情况:当数据集非常小时,比如只有100个 ...

  6. git提交代码报错 trailing whitespace的解决方法

    1. git提交代码报错 trailing whitespace 禁止执行pre-commit脚本 进入到项目目录中 chmod a-x .git/hooks/pre-commit 2.git提交代码 ...

  7. jQuery easyUI 的combogrid进行模糊匹配

    $(function(){ $('#search_hospitalName').combogrid({ mode : 'remote',//远程连接方式 //fitColumns:true,//自动大 ...

  8. NPOI之C#下载Excel

    Java中这个类库叫POI,C#中叫NPOI,很多从Java一直到.Net平台的类库为了区别大部分都是在前面加个N,比如Hibernate和NHibernate. npoi下载地址 一.使用NPOI下 ...

  9. Java反射机制集中学习

    什么是反射 JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法:对于任意一个对象,都能够调用它的任意方法和属性:这种动态获取信息以及动态调用对象方法的功能称为java语言 ...

  10. FontSize sp 和 dp 的区别

    dp不会随着“设置->显示->字体大小”的改变而改变,sp会. sp会随着configeration的配置来scale, dp不会. 所以,什么时候用sp, 什么时候用dp需要斟酌.