目录
问题现象:
今天在项目中遇到一个问题:如何 计算某个时间点过了指定分钟数后的date时间?
问题分析:
首先是获取到某个date类型的时间点,然后再获取到一个int类型的分钟数,接着计算出这个时间点过了这个分钟数后的date时间:
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//创建时间格式类
Date date = format.parse("2020-07-31 18:18:18",new ParsePosition(0));//设定一个时间
int minutes = 20;//20分钟
分析完毕,很简单就能想到,这里会用到时间戳的计算,
在java中有个几乎万能的时间工具类: Calendar
1.首先用创建一个Calendar 实例:
Calendar cal = Calendar.getInstance();
2.然后设置时间坐标:
cal.setTime(date);
3.添加工具类配置规则:
cal.add(Calendar.MINUTE,minutes );//给时间坐标加上minutes分钟
4.返回date时间:
cal.getTime();//获取操作后的时间
解决方法:
//假定已有如下数据:
Date类型 的 date 和 int类型 的 minutes;
Calendar cal = Calendar.getInstance();//创建时间工具类
cal.setTime(date);//设置时间坐标
cal.add(Calendar.MINUTE,minutes );//给时间坐标加上minutes分钟
cal.getTime();//获取操作后的时间