java常用库日期操作类(2)

本文介绍Java中日期时间操作的基本方法,包括使用Date类获取当前日期时间、利用Calendar类精确到毫秒的操作、通过DateFormat类进行格式化显示以及使用SimpleDateFormat类自定义日期时间格式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

似乎每种编程语言都脱离不了日期操作函数,java也一样,之前零零散散接触过多次,还是写一篇博客记下来吧:

第一种是Date类,来看看怎么用

package excise;
import java.util.Date;
public class DateDemo {
	public static void main(String args[]){
		Date date=new Date();
		System.out.println(date);
	}

}
结果为:

Thu Nov 05 14:07:26 CST 2015
该类结果时间格式,并不是我们所希望的,而且日期不能精确到毫秒的级别,不太符合我们的语言习惯,

看另外一个类,Calendar类,该类时间能精确到毫秒,而且该类下面的时间相关的都是常量,该类本身是一个抽象类,可以通过GregorianCalendar类来实例化

package excise;
import java.util.Date;
import java.util.Calendar;
import java.util.GregorianCalendar;
public class DateDemo {
	public static void main(String args[]){
		Calendar calendar=new GregorianCalendar();
		System.out.println(calendar.get(Calendar.YEAR));
		System.out.println(calendar.get(Calendar.MONTH));
		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));
	
	}

}

结果是:

2015
10
5
14
50
28
746


时间格式类,DateFormat类,其中DateFormat类与MessageFormat类都属于Format类的子类,专门用于格式化数据使用的,

DateFormat类也是一个抽象类,所以是无法直接用实例化的的方法,但是在此抽闲类提供了一个静态方法,可以直接用于实例化,

package excise;
import java.util.Date;
import java.util.Locale;
import java.text.DateFormat;
public class DateDemo {
	public static void main(String args[]){
		DateFormat  df1=DateFormat.getDateInstance();
		DateFormat df2=DateFormat.getDateTimeInstance();
		System.out.println(df1.format(new Date()));
		System.out.println(df2.format(new Date()));
		DateFormat  df3=DateFormat.getDateInstance(DateFormat.YEAR_FIELD,new Locale("zh","CN"));
		DateFormat df4=DateFormat.getDateTimeInstance(DateFormat.YEAR_FIELD,DateFormat.ERA_FIELD,new Locale("zh","CN") );
		System.out.println(df3.format(new Date()));
		System.out.println(df4.format(new Date()));
	}

}

结果是:

2015-11-5
2015-11-5 15:04:53
2015年11月5日
2015年11月5日 下午03时04分53秒 CST


还有一个时间格式类,SimpleDateFormat类,这是另外一个时间格式类,具体来看看怎么用:

package excise;
import java.util.Date;
import java.util.Locale;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
public class DateDemo {
	public static void main(String args[])throws Exception{
		String strDate="2015-11-05 10:11:30.345";
		String pat1="yyyy-MM-dd HH:mm:ss.SSS";
		String pat2="yyyy年MM月dd日HH时mm分ss秒SSS毫秒";
		SimpleDateFormat  df1=new SimpleDateFormat(pat1);
		SimpleDateFormat  df2=new SimpleDateFormat(pat2);
		Date d=df1.parse(strDate);
		System.out.println(df1.format(d));
		System.out.println(df2.format(d));
		System.out.println(df1.format(new Date()));
		System.out.println(df2.format(new Date()));
	}

}














评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值