Java怎么判断当前时间是否在给定两个时间字符串直接
时间: 2023-07-29 07:09:35 浏览: 108
可以使用Java中的SimpleDateFormat类将时间字符串转化为Date类型,然后再通过比较Date类型的大小来判断当前时间是否在给定的时间范围内。具体实现可以参考下面的代码示例:
```java
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
public class TimeUtils {
/**
* 判断当前时间是否在给定的时间范围内
*
* @param startTimeStr 开始时间字符串,格式为"yyyy-MM-dd HH:mm:ss"
* @param endTimeStr 结束时间字符串,格式为"yyyy-MM-dd HH:mm:ss"
* @return true表示在时间范围内,false表示不在时间范围内
*/
public static boolean isBetween(String startTimeStr, String endTimeStr) {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
try {
Date startTime = sdf.parse(startTimeStr);
Date endTime = sdf.parse(endTimeStr);
Date nowTime = new Date();
return nowTime.after(startTime) && nowTime.before(endTime);
} catch (ParseException e) {
e.printStackTrace();
}
return false;
}
}
```
使用示例:
```java
public class Main {
public static void main(String[] args) {
String startTime = "2021-10-01 00:00:00";
String endTime = "2021-10-07 23:59:59";
boolean isBetween = TimeUtils.isBetween(startTime, endTime);
if (isBetween) {
System.out.println("当前时间在时间范围内");
} else {
System.out.println("当前时间不在时间范围内");
}
}
}
```
注意:上面的代码示例中,当前时间指的是代码运行的时间,而不是系统当前时间。如果要获取系统当前时间,可以使用`new Date()`方法获取。
阅读全文