java8 日期加减
时间: 2023-09-13 21:13:21 浏览: 74
Java8中,可以使用`plus`和`minus`方法来对日期进行加减操作。比如,如果要对当前日期加上3天,可以使用`plusDays`方法,代码示例如下:
```
LocalDate today = LocalDate.now();
LocalDate newDate = today.plusDays(3);
```
同理,如果要对日期减去3天,可以使用`minusDays`方法,代码示例如下:
```
LocalDate today = LocalDate.now();
LocalDate newDate = today.minusDays(3);
```
除了天数,还可以对年份、月份进行加减操作。比如,要对当前日期加上2个月,可以使用`plusMonths`方法,代码示例如下:
```
LocalDate today = LocalDate.now();
LocalDate newDate = today.plusMonths(2);
```
类似地,可以使用`minusMonths`方法对月份进行减操作。
这些加减方法可以灵活组合使用,以满足你对日期的具体需求。注意,这些方法都返回一个新的`LocalDate`对象,原始的日期对象不会被修改。
相关问题
JAVA自定义日期加减一天
对于Java中的日期加减一天,可以使用`java.util.Calendar`类或`java.time.LocalDate`类来实现。下面是两种方法的示例:
使用Calendar类:
```java
import java.util.Calendar;
public class Main {
public static void main(String[] args) {
// 创建一个Calendar实例
Calendar calendar = Calendar.getInstance();
// 添加一天
calendar.add(Calendar.DAY_OF_YEAR, 1);
// 获取新日期
System.out.println(calendar.getTime());
// 减去一天
calendar.add(Calendar.DAY_OF_YEAR, -1);
// 获取新日期
System.out.println(calendar.getTime());
}
}
```
使用LocalDate类(Java 8及以上版本):
```java
import java.time.LocalDate;
public class Main {
public static void main(String[] args) {
// 获取当前日期
LocalDate date = LocalDate.now();
// 添加一天
LocalDate newDate = date.plusDays(1);
// 获取新日期
System.out.println(newDate);
// 减去一天
LocalDate previousDate = date.minusDays(1);
// 获取新日期
System.out.println(previousDate);
}
}
```
这两种方法都可以实现对日期进行加减操作,你可以根据具体需求选择其中一种方法来使用。
日期怎么加减在java
在 Java 中,可以使用 `java.util.Calendar` 或者 `java.time.LocalDate` 类来进行日期的加减运算。
1. 使用 `java.util.Calendar` 类进行日期加减:
```java
Calendar cal = Calendar.getInstance();
cal.setTime(new Date()); // 设置当前时间
// 加上 1 天
cal.add(Calendar.DATE, 1);
// 减去 1 天
cal.add(Calendar.DATE, -1);
// 加上 1 个月
cal.add(Calendar.MONTH, 1);
// 减去 1 个月
cal.add(Calendar.MONTH, -1);
// 加上 1 年
cal.add(Calendar.YEAR, 1);
// 减去 1 年
cal.add(Calendar.YEAR, -1);
```
2. 使用 `java.time.LocalDate` 类进行日期加减:
```java
LocalDate now = LocalDate.now();
// 加上 1 天
now = now.plusDays(1);
// 减去 1 天
now = now.minusDays(1);
// 加上 1 个月
now = now.plusMonths(1);
// 减去 1 个月
now = now.minusMonths(1);
// 加上 1 年
now = now.plusYears(1);
// 减去 1 年
now = now.minusYears(1);
```
需要注意的是,`java.util.Calendar` 类的月份是从 0 开始计数的,即 0 表示 1 月,而 `java.time.LocalDate` 类的月份是从 1 开始计数的,即 1 表示 1 月。