关于java日期类Date,DateFormat,SimpleDateFormat,Calendar总结

                      Date,DateFormat,SimpleDateFormat,Calendar

                                    

1、Date类:

在java.util包下,类 Date 表示特定的瞬间,精确到毫秒。从 JDK 1.1 开始,应该使用 Calendar 类实现日期和时间字段之间转换,使用 DateFormat 类来格式化和分析日期字符串。Date 中的相应方法已废弃。所以Date主要用来生成时间(是网上见解,我也是这样认为的)。

(1)Date有两个构造方法:

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

(2)Date(long date)基本上没用不用记。

eg:Date date=new Date();  System.out.println(date);输出:Tue Jun 16 20:51:24 CST 2015

(2)Date常用方法:

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

没什么用我感觉)                   boolean before(Date when) 测试此日期是否在指定日期之前          

   int compareTo(Date anotherDate) 比较两个日期的顺序            


2、DateFormat类:

在java.text包下,DateFormat 是日期/时间格式化子类的抽象类,它以与语言无关的方式格式化并解析日期或时间。它是抽象类,所以不能构造方法来实例化,可以用getDateInstance()和getDateTimeInstance()这两个静态函数来进行实例化。这两个的区别是一个返回的是日期,一个返回的是日期+时间.同时,getDateInstance(int style),getDateInstance(int style, Locale aLocale)等方法也挺好用的。关于style值:

FULL: 长度最长 比如:2013年1月9日 星期三        LONG: 长度更长 比如:January 9, 2013

MEDIUM:长度比SHORT长 比如:Jan 9,2013           SHORT: 完全为数字,比如:13/1/9

eg:DateFormat d1=DateFormat.getDateInstance();

DateFormat d2=DateFormat.getDateTimeInstance();

String s1=d1.format(new Date());

String s2=d2.format(new Date());         输出:2015-6-16

System.out.println(s1);                        2015-6-16 21:05:22

System.out.println(s2);

eg1:DateFormat d1=DateFormat.getDateInstance(DateFormat.LONG);       输出:2015年6月16日

3、SimpleDateFormat类:

在java.text包下,它是DateFormat类的直接子类,继承DateFormat类。我是这么理解SimpleDateFormat类的,它相对于Datef类更接地气,你可以随意给他指定一个形式的日期,进行更改。SimpleDateFormat类主要功能是完成日期之间格式的转换,而且在转换过程中需要采用如下步骤:1.指定一个模板,并根据这个模板,取出第一个所有的时间数字。2.所有的时间数字将采用Date类保存。3.将所有的时间数字重新进行格式转换。模板如下表,注意区分大小写

日期 模板 描述
Y 表示年:yyyy
M 表示月:MM
d 表示日:dd
HH 表示时:HH
mm 表示分:mm
ss 表示秒:ss
毫秒 S 毫秒:SSS

eg:SimpleDateFormat sdf=new SimpleDateFormat("y年M月d日    HH:mm:ss D");    //也可以是"yyyy年MM月dd日

System.out.println(sdf.format(new Date()));        输出:2015年6月16日    21:39:10 167

4、Calendar类:

在java.util包下,Calendar 类是一个抽象类,它为“特定瞬间”与一组诸如 “YEAR”、

“MONTH”、“DAY_OF_MONTH”、“HOUR ”等日历字段之间的转换提供了一些方法,并为操作日历字段(例如获得下星期的日期)提供了一些方法。Calendar实例化有两种方式,第一种是 Calendar nowTime = new GregorianCalendar();,第二种是Calendar calendar=Calendar.getInstance();

eg:Calendar c=Calendar.getInstance();

System.out.println(c.get(Calendar.YEAR)+"年"+(c.get(Calendar.MONTH)+1)+"月"+

c.get(Calendar.DATE)+"日"+c.get(Calendar.HOUR)+"点");   // 输出:2015年6月16日9点

(1)常用的方法:

add(int date,int num);//返回num前后的日期//date表示日期字段,num表示添加的天数;

get(int date);//通过获取字段,返回具体的信息;



这些见解是找了大量资料浓缩而成的精华,我感觉能对一个新入门的人起一些关键性的作用,至于这些类里面还有很多很多的方法,我觉得没必要记了,不懂的时候可以查api文档。

时间: 2024-12-29 01:28:58

关于java日期类Date,DateFormat,SimpleDateFormat,Calendar总结的相关文章

Java 日期类Date 学习

Java?日期构造构造函数1 声明一个日期, 默认返回当前系统时间Date() 构造函数2 接收一个参数,该参数是从1970年1月1日起的毫秒数.Date(100000) 返回1970年+毫秒数 /*java-er.comlearn java is so easy/import java.util.Date;public class Test {public static void main(String[] args){Date date = new Date();System.out.pri

日期类 Date

import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; /* 日期类 Date Calendar 日期格式化类 SimpleDateFormat */ public class Demo3 { public static void main(String[] args) throws ParseException {

利用java日期类生成数据仓库维度表

利用java日期类生成数据仓库维度表 Date类: 最基础的日期时间类,返回一个相对日期的毫秒数.精确到毫秒,但不支持日期的国际化和分时区显示.Date 类从Java 开发包(JDK)1.0 就开始进化,当时它只包含了几个取得或者设置一个日期数据的各个部分的方法, 比如说月, 日, 和年. 这些方法现在遭到了批评并且已经被转移到了Calendar类里去了,这种改进旨在更好的处理日期数据的国际化格式. Calender类: 相对于Date更加强大的时间类,是抽象类,提供了常规的日期修改功能和国际化

Java 日期时间 Date类型,long类型,String类型表现形式的转换 (转)

Java 日期时间 Date类型,long类型,String类型表现形式的转换 1.java.util.Date类型转换成long类型java.util.Date dt = new Date();System.out.println(dt.toString());   //java.util.Date的含义long lSysTime1 = dt.getTime() / 1000;   //得到秒数,Date类型的getTime()返回毫秒数 2.由long类型转换成Date类型SimpleDat

Java 日期时间 Date类型,long类型,String类型表现形式的转换

1.java.util.Date类型转换成long类型java.util.Date dt = new Date();System.out.println(dt.toString());   //java.util.Date的含义long lSysTime1 = dt.getTime() / 1000;   //得到秒数,Date类型的getTime()返回毫秒数 2.由long类型转换成Date类型SimpleDateFormat sdf= new SimpleDateFormat("MM/dd

I学霸官方免费教程二十三:Java常用类之日期类 Date类 SimpleDateFormat类 Calendar类

Date 类 创建对象时,默认获取系统当前时间 SimpleDateFormat类 用来格式化日期的:创建对象是可以传入格式:new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");主要方法format(Date) Calendar类 可以使用SimpleDateFormat类中的getCalendar()方法获取对象.常用方法:get(int); 常用属性:YEAR MONTH... 实例: package common_class; import j

Java日期格式化(DateFormat类和SimpleDateFormat类)

格式化日期表示将日期/时间格式转换为预先定义的日期/时间格式.例如将日期“Fri May 18 15:46:24 CST2016” 格式转换为 “2016-5-18 15:46:24 星期五”的格式. 在 Java 中,可以使用 DateFormat 类和 SimpleDateFormat 类来格式化日期,下面详细介绍这两个格式化日期类的使用. DateFormat 类 DateFormat 是日期/时间格式化子类的抽象类,它以与语言无关的方式格式化并解析日期或时间.日期/时间格式化子类(如 S

Java:日期类Date与Calendar

怎么获取系统系统时间,通过java? Date now= new Date(); SimpleDateFormat dateFormat=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSSSSSSSS"); String nowFormate= dateFormat.format(now); System.out.println(nowFormate); 输出结果 2017-02-16 20:56:12.000000278 如何获取当前系统是星期

Java中有关日期的一些常见运算与应用(Date,DateFormat,SimpleDateFormat)

1 import java.text.DateFormat; 2 import java.text.SimpleDateFormat; 3 import java.util.Date; 4 import java.util.Calendar; 5 import java.util.GregorianCalendar; 6 7 public class Oct_18_TimeAndDateFormat { 8 9 public static void main(String[] args) { 1