java 日期加减天数、月数、年数的计算方式

因为某个项目需要统计 近1周、近1个月、近6个月 等数据,所以在时间的加减上面想了很多方式,最后决定用java.util.Calendar

java.util.Calendar ,提供了计算时间的方式,

Calendar.DATE  : 代表天数

Calendar.WEDNESDAY: 代表周数

Calendar.MONTH : 代表月数

Calendar.YEAR :代表年数

具体计算方式如下:

1、 计算近一周的日期,也就是得出过去7天的时间段,如今天2015-07-21  ,一个星期前那就是2015-07-14

public static void main(String[] args) {
		Calendar cal = Calendar.getInstance();
		cal.setTime(new Date());
		cal.add(Calendar.DATE, -7);
		System.out.println(DateUtils.date2String("yyyy-MM-dd", cal.getTime()));
	}

或者:

Calendar cal = Calendar.getInstance();
		cal.setTime(new Date());
		cal.add(Calendar.WEDNESDAY, -1);
		System.out.println(DateUtils.date2String("yyyy-MM-dd", cal.getTime()));

这两者的结果都是得出2015-07-14的结果,只不过一个是减去7天,一个减去一个星期

注:如果是计算未来的日期,只需要去掉数字前面的负号就行了

2、计算近一个月的日期,也就是过去的一个月的时间段,如下:

Calendar cal = Calendar.getInstance();
		cal.setTime(new Date());
		cal.add(Calendar.MONTH, -1);
		System.out.println(DateUtils.date2String("yyyy-MM-dd", cal.getTime()));

输出结果:2015-06-21

3、计算近一年的日期,也就是过去一年的时间段,如下:

Calendar cal = Calendar.getInstance();
		cal.setTime(new Date());
		cal.add(Calendar.YEAR, -1);
		System.out.println(DateUtils.date2String("yyyy-MM-dd", cal.getTime()));

输出结果:2014-07-21

这个Calendar挺好用的,用来计算时间段的开始和结束什么的很方便~

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-08-11 06:20:21

java 日期加减天数、月数、年数的计算方式的相关文章

java日期加减操作

1.用java.util.Calender来实现 Calendar calendar=Calendar.getInstance();      calendar.setTime(new Date());    System.out.println(calendar.get(Calendar.DAY_OF_MONTH));//今天的日期    calendar.set(Calendar.DAY_OF_MONTH,calendar.get(Calendar.DAY_OF_MONTH)+1);//让日

JAVA日期加减运算

1.用java.util.Calender来实现 Calendar calendar=Calendar.getInstance();      calendar.setTime(new Date());    System.out.println(calendar.get(Calendar.DAY_OF_MONTH));//今天的日期    calendar.set(Calendar.DAY_OF_MONTH,calendar.get(Calendar.DAY_OF_MONTH)+1);//让日

Java 日期加减运算

1.用java.util.Calender来实现 Calendar calendar=Calendar.getInstance();      calendar.setTime(new Date());    System.out.println(calendar.get(Calendar.DAY_OF_MONTH));//今天的日期    calendar.set(Calendar.DAY_OF_MONTH,calendar.get(Calendar.DAY_OF_MONTH)+1);//让日

JAVA 日期加减

用java.util.Calender来实现  Calendar calendar=Calendar.getInstance();       calendar.setTime(new Date());     System.out.println(calendar.get(Calendar.DAY_OF_MONTH));//今天的日期     calendar.set(Calendar.DAY_OF_MONTH,calendar.get(Calendar.DAY_OF_MONTH)+1);//

Java 日期加减计算.

1.用Java.util.Calender来实现 Calendar calendar=Calendar.getInstance();      calendar.setTime(new Date());    System.out.println(calendar.get(Calendar.DAY_OF_MONTH));//今天的日期    calendar.set(Calendar.DAY_OF_MONTH,calendar.get(Calendar.DAY_OF_MONTH)+3);//日期

mysql 日期加减天数

MySQL 为日期增加一个时间间隔:date_add() now()       //now函数为获取当前时间 select date_add(now(), interval 1 day); - 加1天 select date_add(now(), interval 1 hour); -加1小时 select date_add(now(), interval 1 minute); - 加1分钟 select date_add(now(), interval 1 second); -加1秒 sel

Js日期加减(天数),时间加减,日期运算,可直接调用

根据传入的日期做加减法计算,整数为加法,负数为减法,但是是天.  num可传入: 1,2,3,-1,-2,-3等,默认是加一天:date可传入: 2017-01-01格式的,不传的话默认是当天日期. function dateChange(num = 1,date = false) { if (!date) { date = new Date();//没有传入值时,默认是当前日期 date = date.getFullYear() + '-' + (date.getMonth() + 1) +

java日期加减

1.原来Java的日期添加不像.NET的.Add: import java.util.Date ; date=new   date();//取时间      Calendar   calendar   =   new   GregorianCalendar();      calendar.setTime(date);      calendar.add(calendar.DATE,1);//把日期往后增加一天.整数往后推,负数往前移动      date=calendar.getTime();

java 常用的日期加减和日期格式化工具类

平时我们遇到日期的加减,感觉是相当麻烦的,以下是常用的日志加减的方法,包括日的加减.月的加减等,也包括了一些常用的日期格式化,这样在我们以后碰到日期加减的时候会省去很多麻烦,欢迎大神指正和吐槽: 1 package bp.util; 2 3 import java.text.ParseException; 4 import java.text.SimpleDateFormat; 5 import java.util.Calendar; 6 import java.util.Date; 7 8 p