java-Calendar类的一些简单操作

一、计算距离某时间一定天数后的日期

例:距离当前日期100后的日期:

		Calendar c = Calendar.getInstance();    //获取当前日期
		c.add(Calendar.DATE, 100);    //加上100天后
		int year = c.get(Calendar.YEAR);
		int month = c.get(Calendar.MONTH);
		int day = c.get(Calendar.DATE);
		System.out.println(year+"/"+month+"/"+day);

 如需要自己设定的某个时间,再用set()方法设定即可,如1988年七月一号:

		Calendar c = Calendar.getInstance();
		c.set(1988, 7-1, 1);    //1988年七月1号
		c.add(Calendar.DATE, 100);
		int year = c.get(Calendar.YEAR);
		int month = c.get(Calendar.MONTH);
		int day = c.get(Calendar.DATE);
		System.out.println(year+"/"+month+"/"+day);

需要注意的是其参数的结构和Date类不一样。Calendar类中年份的数值直接书写,月份的值为实际的月份值减1,日期的值就是实际的日期值。而Date类的年份的值为实际的年份减1900,使用的时候需要注意一下。

二、计算相差的天数

		Calendar c1 = Calendar.getInstance();
		c1.set(1988, 7-1, 1);
		Calendar c2 = Calendar.getInstance();
		c2.set(1990,5,6);
		
		long d1 = c1.getTimeInMillis();
		long d2 = c2.getTimeInMillis();

		long days = (d2-d1)/(24*60*60*1000);//一天的毫秒数24h*60m*60s*1000ms
		System.out.println(days);

如果c1为第一天,则C2的天数为days+1天。

因为最近在准备Java组的蓝桥杯,所以在网上搜查整理了一下,发现一位博客讲的很透彻,在这里附上https://www.cnblogs.com/vanl/p/5815561.html#undefined

猜你喜欢

转载自blog.csdn.net/qq_42330000/article/details/87735271