如何在Java中获取昨天的日期

流程

下面是获取昨天日期的流程图:

gantt
    dateFormat  YYYY-MM-DD
    title 获取昨天的日期流程
    
    section 获取当前日期
    获取当前日期    :a1, 2022-12-01, 1d
    获取昨天日期    :a2, after a1, 1d

步骤

  1. 获取当前日期
  2. 计算昨天的日期

获取当前日期

获取当前日期可以使用Java中的java.util.Date类和java.time.LocalDate类。

方法1:使用java.util.Date
import java.util.Date;

public class Main {
    public static void main(String[] args) {
        Date date = new Date(); // 创建一个Date对象,表示当前时间
        System.out.println(date); // 打印当前时间
    }
}

上述代码使用java.util.Date类的无参构造函数创建了一个表示当前时间的对象,并使用System.out.println()方法打印出来。

方法2:使用java.time.LocalDate
import java.time.LocalDate;

public class Main {
    public static void main(String[] args) {
        LocalDate date = LocalDate.now(); // 获取当前日期
        System.out.println(date); // 打印当前日期
    }
}

上述代码使用java.time.LocalDate类的静态now()方法获取当前日期,并使用System.out.println()方法打印出来。

计算昨天的日期

计算昨天的日期可以使用java.util.Calendar类和java.time.LocalDate类。

方法1:使用java.util.Calendar
import java.util.Calendar;

public class Main {
    public static void main(String[] args) {
        Calendar calendar = Calendar.getInstance(); // 创建一个Calendar对象,表示当前时间
        calendar.add(Calendar.DAY_OF_MONTH, -1); // 将日期减去1,即得到昨天的日期
        Date yesterday = calendar.getTime(); // 获取昨天的日期
        System.out.println(yesterday); // 打印昨天的日期
    }
}

上述代码使用java.util.Calendar类的getInstance()方法创建一个表示当前时间的对象,然后使用add()方法将日期减去1,即得到昨天的日期。最后使用getTime()方法获取昨天的日期,并使用System.out.println()方法打印出来。

方法2:使用java.time.LocalDate
import java.time.LocalDate;

public class Main {
    public static void main(String[] args) {
        LocalDate date = LocalDate.now(); // 获取当前日期
        LocalDate yesterday = date.minusDays(1); // 将日期减去1,即得到昨天的日期
        System.out.println(yesterday); // 打印昨天的日期
    }
}

上述代码使用java.time.LocalDate类的now()方法获取当前日期,然后使用minusDays()方法将日期减去1,即得到昨天的日期。最后使用System.out.println()方法打印出来。

状态图

下面是获取昨天日期的状态图:

stateDiagram
    [*] --> 获取当前日期
    获取当前日期 --> 计算昨天的日期
    计算昨天的日期 --> [*]

状态图中的状态表示程序的不同阶段,箭头表示状态之间的转换。

结论

通过上述方法,可以在Java中获取昨天的日期。根据具体需求和个人偏好,可以选择使用java.util.Date类和java.util.Calendar类,或者使用java.time.LocalDate类。不论使用哪种方法,都可以轻松地获取昨天的日期。