java 日期加减计算 获取上周、本周、下周的时间

本文介绍Java中使用GregorianCalendar进行日期加减操作的方法,并提供了一段代码用于计算指定周次(上周、本周或下周)的开始和结束时间。

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

Java中对日期的加减操作

gc.add(1,-1)表示年份减一.
gc.add(2,-1)表示月份减一.
gc.add(3.-1)表示周减一.
gc.add(5,-1)表示天减一.

GregorianCalendar类的add(int field,int amount)方法表示年月日等加减.
field参数表示年,月.日等.

amount参数表示要加减的数量.


/*
	 * 计算时间周的开始和结束时间(上周,本周,下周)
	 * param flag -1 上周  2是下周
	 * return date
	 */
	public Date getWeek(int flag){
		Calendar gc = new GregorianCalendar();
		gc.add(3, flag);
		Date week = null;
		if (gc.get(Calendar.DAY_OF_WEEK) == Calendar.SATURDAY) {
			gc.add(5, 1);
			week = gc.getTime();
		} else if (gc.get(Calendar.DAY_OF_WEEK) == Calendar.FRIDAY) {
			gc.add(5, 2);
			week = gc.getTime();
		} else if (gc.get(Calendar.DAY_OF_WEEK) == Calendar.THURSDAY) {
			gc.add(5, 3);
			week = gc.getTime();
		} else if (gc.get(Calendar.DAY_OF_WEEK) == Calendar.WEDNESDAY) {
			gc.add(5, -3);
			week = gc.getTime();
		} else if (gc.get(Calendar.DAY_OF_WEEK) == Calendar.TUESDAY) {
			gc.add(5, -2);
			week = gc.getTime();
		} else if (gc.get(Calendar.DAY_OF_WEEK) == Calendar.MONDAY) {
			gc.add(5, -1);
			week = gc.getTime();
		} else {
			week = gc.getTime();
		}
		return week;
	}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值