需求:数据是从每年的11月15号到今天开始算的,但是你时间选择的是2021年10月1号,那么就需要你去查上一年11月15号到今天的数据,怎么写这个判断呢?
先获取开始时间,然后再判断开始时间是否是在11月15号之后的,如果不是,就查上一年11月15号到今天的数据,思路我都懂,但是不会写
Java判断时间是否在几月几号之后
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
2条回答 默认 最新
- hackcrown 2022-08-03 10:13关注
import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; public class Test { public static void main(String[] args) { String date = "2021-11-01"; //String date = "2021-12-01"; String[] dateRange = getDateRange(date); if(dateRange != null && dateRange.length >0 ) { String startDate = dateRange[0]; String endDate = dateRange[1]; System.out.println("开始时间:"+startDate); System.out.println("结束时间:"+endDate); } } private static String[] getDateRange(String date) { SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd"); try { Date parse1 = format.parse(date); Calendar cal = Calendar.getInstance(); cal.setTime(parse1); int year = cal.get(Calendar.YEAR); String newDate = year+"-11-15"; Date parse2 = format.parse(newDate); if(parse1.getTime() >= parse2.getTime()) { return new String[]{newDate, date}; } else { newDate = (year-1)+"-11-15"; return new String[]{newDate, date}; } } catch (ParseException e) { e.printStackTrace(); } return null; } }
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报 编辑记录
悬赏问题
- ¥15 微信公众平台自制会员卡可以通过收款码收款码收款进行自动积分吗
- ¥15 随身WiFi网络灯亮但是没有网络,如何解决?
- ¥15 gdf格式的脑电数据如何处理matlab
- ¥20 重新写的代码替换了之后运行hbuliderx就这样了
- ¥100 监控抖音用户作品更新可以微信公众号提醒
- ¥15 UE5 如何可以不渲染HDRIBackdrop背景
- ¥70 2048小游戏毕设项目
- ¥20 mysql架构,按照姓名分表
- ¥15 MATLAB实现区间[a,b]上的Gauss-Legendre积分
- ¥15 delphi webbrowser组件网页下拉菜单自动选择问题