首页 > 代码库 > Java入门——日期操作类

Java入门——日期操作类

Java入门——日期操作类



Date类

  

是一个较为简单的操作类,使用java.util.Data类的构造方法并进行输出就可以得到一个完整的日期。构造方法为:  public Data();

  java.util包需要导入

package Sep26;import java.util.Date;public class DataDemo01 {	public static void main(String[] args) {		Date date=new Date();		System.out.println("当前日期为:"+date);	}}
当前日期为:Mon Sep 26 10:57:57 CST 2016

  使用Calendar类可以得到格式丰富的日期

Calendar类

Calendar类是一个抽象类,可以依靠对象的多态性,通过子类对父类进行实例化操作,Calendar类的子类是GregorianCalendar类。  

属性:

序号常量类型描述
1public static final int YEARint取得年
2public static final int MONTHint取得月
3public static final int DAY_OF_MONTHint取得日
4public static final int HOUR_OF_DAYint取得小时,24小时制
5

public static final int MINUTE

int取得分
6public static final int SECONDint取得秒
7public static final int MILLISEONDint取得毫秒

方法:

序号方法类型描述
1public static Calendar getInstance()普通根据默认的时区实例化对象
2public beelean after(Obeject when)普通判断一个日期是否在一个日期之前
3public beelean before(Obeject when)普通判断一个日期是否在一个日期之后
4public int get(int field)普通返回给定日历字段的值
package Sep26;import java.util.Calendar;import java.util.GregorianCalendar;public class DateDemo02 {	public static void main(String[] args) {		Calendar calendar=null;		calendar=new GregorianCalendar();		System.out.println("年:"+calendar.get(Calendar.YEAR));		System.out.println("月:"+calendar.get(Calendar.MONTH)+1);//月份是从0开始算的,所以要+1		System.out.println("日:"+calendar.get(Calendar.DAY_OF_MONTH));		System.out.println("时:"+calendar.get(Calendar.HOUR_OF_DAY));		System.out.println("分:"+calendar.get(Calendar.MINUTE));		System.out.println("秒:"+calendar.get(Calendar.SECOND));		System.out.println("毫秒:"+calendar.get(Calendar.MILLISECOND));	}}
年:2016月:81日:26时:11分:20秒:3毫秒:384

  按照以上方法获得系统的时间会比较复杂,所以Java提供了其他方便的系统时间类,以显示符合习惯的系统时间

DateFormat类

  Format类是用于格式化数据的一个类,DateFormat类是它的一个子类:DateFormat类也是一个抽象类,但是该抽象类中提供了一个静态方法,可以直接取得本类的实例。

package Sep26;import java.util.*;import java.text.*;public class DateDemo03 {	public static void main(String[] args) {		DateFormat df1=null;		DateFormat df2=null;		df1=DateFormat.getDateInstance(DateFormat.YEAR_FIELD,new Locale("zh","CN"));		df2=DateFormat.getDateTimeInstance(DateFormat.YEAR_FIELD,DateFormat.ERA_FIELD,new Locale("zh","CN"));		System.out.println("DATE:"+df1.format(new Date()));		System.out.println("DATE:"+df2.format(new Date()));	}}
DATE:2016年9月26日DATE:2016年9月26日 上午11时37分59秒 CST

SimpleDateFormat类(最常用)

  先定义出一个完整的日期转换模板,在模板中通过通过特定的日期标记:

序号标记描述
1yyyy
2MM
3dd
4HH小时
5mm分钟
6ss
7SS毫秒
   

 

Java入门——日期操作类