获取本月第一天最早时间和本月最后一天最晚时间可以使用Java中的Calendar类和Date类来实现。具体步骤如下:
1. 获取当前日期
```
Calendar calendar = Calendar.getInstance();
```
2. 将日期设置为本月第一天
```
calendar.set(Calendar.DAY_OF_MONTH, 1);
```
3. 获取本月第一天最早时间
```
calendar.set(Calendar.HOUR_OF_DAY, 0);
calendar.set(Calendar.MINUTE, 0);
calendar.set(Calendar.SECOND, 0);
calendar.set(Calendar.MILLISECOND, 0);
Date firstDayOfMonth = calendar.getTime();
```
4. 将日期设置为下个月第一天
```
calendar.add(Calendar.MONTH, 1);
```
5. 将日期减去1毫秒,获取本月最后一天最晚时间
```
calendar.add(Calendar.MILLISECOND, -1);
Date lastDayOfMonth = calendar.getTime();
```
完整示例代码如下:
```
import java.util.Calendar;
import java.util.Date;
public class DateDemo {
public static void main(String[] args) {
Calendar calendar = Calendar.getInstance();
// 获取本月第一天最早时间
calendar.set(Calendar.DAY_OF_MONTH, 1);
calendar.set(Calendar.HOUR_OF_DAY, 0);
calendar.set(Calendar.MINUTE, 0);
calendar.set(Calendar.SECOND, 0);
calendar.set(Calendar.MILLISECOND, 0);
Date firstDayOfMonth = calendar.getTime();
System.out.println("本月第一天最早时间:" + firstDayOfMonth);
// 获取本月最后一天最晚时间
calendar.add(Calendar.MONTH, 1);
calendar.add(Calendar.MILLISECOND, -1);
Date lastDayOfMonth = calendar.getTime();
System.out.println("本月最后一天最晚时间:" + lastDayOfMonth);
}
}
```