Java使用Calendar获取当前日期

    使用Calendar创建日期类型对象,由于Calendar是抽象类不能直接new,使用getInstance()方法创建实例对象,具体看参考API(java.util.Calendar);另外,可通过SimpleDateFormat类来可控制其日期格式:

如:

Calendar c = Calendar.getInstance(Locale.CHINA);
//将Calendar转换为String并指定其日期格式
DateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String str = format.format(c.getTime());
System.out.println("当前日期时间:" + str);

//输出:  当前日期时间:2014-10-16 18:12:00

    也可对Calendar对象的指定属性进行加减操作、设值,获取当前日期毫秒数,创建指定日期的Calendar对象,获取该日期是星期几等等。

如:

c.add(Calendar.DATE, 1);   //对c对象的日期加1
str = format.format(c.getTime());
System.out.println("当前日期时间(日期加1):" + str);

//输出:  当前日期时间(日期加1):2014-10-17 18:12:00

//创建指定日期时间的Calendar实例;注月份是从0开始计算的
c.set(2015, 8, 1, 13, 00, 00);
System.out.println("指定日期时间:" + format.format(c.getTime()));

//输出:  指定日期时间:2015-09-01 13:00:00

//也可分别给指定的属性设值
c.set(Calendar.MONTH,Calendar.OCTOBER);
c.set(Calendar.HOUR_OF_DAY, 14);
c.set(Calendar.MINUTE, 59);
str = format.format(c.getTime());
System.out.println("某日期(给某属性设值):" + str);

//输出:  某日期(给某属性设值):2015-10-01 14:59:00

//获取当前日期毫秒数 的两种方法
long ms = c.getTimeInMillis();
ms = System.currentTimeMillis();

//获取当前日期时星期几 ; 字母的具体含义参考API中的类java.text.SimpleDateFormat
format = new SimpleDateFormat("E");
str = format.format(c.getTime());
System.out.println("当前日期时间(星期):" + str);

//输出:  当前日期时间(星期):星期四


//控制日期格式的另外一种方法;参数具体可参考API
format = DateFormat.getDateTimeInstance(DateFormat.MEDIUM, DateFormat.MEDIUM);
System.out.println(format.format(c.getTime()));

//输出:   2015-10-01 14:59:00

   对于需要周期性执行的某一操作,可使用Timer和TimeTask实现:如

final Timer timer = new Timer();
TimerTask tTask = new TimerTask() {
	int i = 0;
	@Override
	public void run() {
		i++;
		System.out.println("每隔2s输出一次…… ");
		if(i == 5){
			timer.cancel();  //停止计时
			timer.purge();   //移除已终止的任务
		}
	}
};
timer.schedule(tTask, 1000, 2000); //1000指延迟时间,也可使用Date类型的参数指定开始执行时间;2000是执行周期

     对于日期类型的创建、操作,以及周期性执行某操作,还有很多其他不同的方法;对于上文如有不妥,请多多指正……




转载于:https://my.oschina.net/youruci/blog/333010

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值