Android 获取后一天0点的Date跨月份
时间: 2024-03-08 13:48:17 浏览: 25
可以使用 Calendar 类来获取后一天0点的 Date 对象,即将当前时间加上一天,并将时分秒清零。示例代码如下:
```java
Calendar calendar = Calendar.getInstance();
calendar.add(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 date = calendar.getTime(); // 获取 Date 对象
```
这段代码会将当前时间加上一天,并将时分秒清零,最终得到的 Date 对象是后一天0点的时间。注意,这个时间是跨月份的,因为 Calendar 类会自动处理跨月份的情况。
相关问题
Android 获取前一天0点的Date跨月份
可以使用 Calendar 类来获取前一天0点的 Date 对象,即将当前时间减去一天,并将时分秒清零。示例代码如下:
```java
Calendar calendar = Calendar.getInstance();
calendar.add(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 date = calendar.getTime(); // 获取 Date 对象
```
这段代码会将当前时间减去一天,并将时分秒清零,最终得到的 Date 对象是前一天0点的时间。注意,这个时间是跨月份的,因为 Calendar 类会自动处理跨月份的情况。
new Date()获取当月第一天的0点
可以使用如下代码获取当月第一天的0点:
```javascript
const now = new Date();
const firstDayOfMonth = new Date(now.getFullYear(), now.getMonth(), 1);
const zeroHour = new Date(firstDayOfMonth.getFullYear(), firstDayOfMonth.getMonth(), firstDayOfMonth.getDate(), 0, 0, 0, 0);
```
其中,`now` 是当前时间,`firstDayOfMonth` 是当前月份的第一天,`zeroHour` 是第一天的0点。这里使用 `new Date(year, monthIndex[, day[, hours[, minutes[, seconds[, milliseconds]]]]])` 构造函数创建日期对象,其中 `year` 是年份,`monthIndex` 是月份(0 表示1月,11表示12月),`day` 是日(默认为1),`hours`、`minutes`、`seconds` 和 `milliseconds` 分别是小时、分钟、秒和毫秒(默认都为0)。