概述
public class test{
public static void main(String[] args)throws ParseException{
//早上9点上班时间
String formatStart = new SimpleDateFormat("yyyy-MM-dd").format(new Date());
String startFormat = formatStart +" 09:00:00";
Date startParse = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(startFormat );
//下午17点下班时间
String formatEnd = new SimpleDateFormat("yyyy-MM-dd").format(new Date());
String endFormat = formatEnd +" 17:00:00";
Date endParse = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(endFormat);
//获取时间实例
Calendar calendar = Calendar.getInstance();
//设置开始时间
calendar.setTime(startParse );
List<Date> list = new ArrayList<>();
//大于等于下班时间结束循环
while(calendar.getTime().before(endParse )){
list.add(calendar.getTime());
//加一个小时
calendar.add(Calendar.HOUR,+1)
}
//添加下班时间
list.add(endParse );
for(Date date : list){
System.out.println(date);
}
}
}
//结果
根据自己需要转换格式
Tue Jul 19 09:00:00 CST 2022
Tue Jul 19 10:00:00 CST 2022
Tue Jul 19 11:00:00 CST 2022
Tue Jul 19 12:00:00 CST 2022
Tue Jul 19 13:00:00 CST 2022
Tue Jul 19 14:00:00 CST 2022
Tue Jul 19 15:00:00 CST 2022
Tue Jul 19 16:00:00 CST 2022
Tue Jul 19 17:00:00 CST 2022
#具体方法
//根据日历的规则,为给定的日历字段添加或减去指定的时间量。
abstract void
add(int field, int amount)
//判断此 Calendar 表示的时间是否在指定 Object 表示的时间之后,返回判断结果。
boolean
after(Object when)
// 判断此 Calendar 表示的时间是否在指定 Object 表示的时间之前,返回判断结果。
boolean
before(Object when)
//给定此 Calendar 的时间值,返回指定日历字段可能拥有的最大值。
int
getActualMaximum(int field)
// 给定此 Calendar 的时间值,返回指定日历字段可能拥有的最小值。
int
getActualMinimum(int field)
// 获取一星期的第一天;例如,在美国,这一天是 SUNDAY,而在法国,这一天是 MONDAY。
int
getFirstDayOfWeek()
//返回此 Calendar 实例给定日历字段的最高的最小值。
abstract
int
getGreatestMinimum(int field)
//使用默认时区和语言环境获得一个日历。
static Calendar getInstance()
//使用默认时区和指定语言环境获得一个日历。
static Calendar getInstance(Locale aLocale)
//
使用指定时区和默认语言环境获得一个日历。
static Calendar getInstance(TimeZone zone)
//使用指定时区和语言环境获得一个日历。
static Calendar getInstance(TimeZone zone, Locale aLocale)
//返回此 Calendar 实例给定日历字段的最低的最大值。
abstract
int
getLeastMaximum(int field)
//返回此 Calendar 实例给定日历字段的最大值。
abstract
int
getMaximum(int field)
// 获取一年中第一个星期所需的最少天数,例如,如果定义第一个星期包含一年第一个月的第一天,则此方法将返回 1。
int
getMinimalDaysInFirstWeek()
// 设置一星期的第一天是哪一天;例如,在美国,这一天是 SUNDAY,而在法国,这一天是 MONDAY。
void
setFirstDayOfWeek(int value)
// 设置一年中第一个星期所需的最少天数,例如,如果定义第一个星期包含一年第一个月的第一天,则使用值 1 调用此方法。
void
setMinimalDaysInFirstWeek(int value)
// 使用给定的 Date 设置此 Calendar 的时间。
void
setTime(Date date)
// 用给定的 long 值设置此 Calendar 的当前时间值。
void
setTimeInMillis(long millis)
//返回此日历的字符串表示形式。
String toString()
最后
以上就是壮观树叶为你收集整理的给两个时间范围,获取之间的时间#具体方法的全部内容,希望文章能够帮你解决给两个时间范围,获取之间的时间#具体方法所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复