Java获取昨日开始时间和结束时间

在Java中,我们经常需要获取昨天的开始时间和结束时间,这在处理时间相关的数据时非常常见。本文将介绍如何使用Java来获取昨天的开始时间和结束时间,并提供相应的代码示例。

获取昨日的开始时间和结束时间

在Java中,可以使用java.util.Calendar类来处理日期和时间。下面是一个示例代码,演示了如何使用Calendar类来获取昨日的开始时间和结束时间。

import java.util.Calendar;

public class YesterdayTime {
    public static void main(String[] args) {
        // 创建一个Calendar实例
        Calendar calendar = Calendar.getInstance();
        
        // 获取当前时间
        calendar.setTimeInMillis(System.currentTimeMillis());
        
        // 设置时间为昨天
        calendar.add(Calendar.DAY_OF_YEAR, -1);
        
        // 设置时间为当天的开始时间
        calendar.set(Calendar.HOUR_OF_DAY, 0);
        calendar.set(Calendar.MINUTE, 0);
        calendar.set(Calendar.SECOND, 0);
        calendar.set(Calendar.MILLISECOND, 0);
        
        // 获取昨天的开始时间
        long yesterdayStartTime = calendar.getTimeInMillis();
        
        // 设置时间为当天的结束时间
        calendar.set(Calendar.HOUR_OF_DAY, 23);
        calendar.set(Calendar.MINUTE, 59);
        calendar.set(Calendar.SECOND, 59);
        calendar.set(Calendar.MILLISECOND, 999);
        
        // 获取昨天的结束时间
        long yesterdayEndTime = calendar.getTimeInMillis();
        
        System.out.println("昨天的开始时间:" + yesterdayStartTime);
        System.out.println("昨天的结束时间:" + yesterdayEndTime);
    }
}

上述代码中,首先创建了一个Calendar实例,并将其设置为当前时间。然后,通过calendar.add(Calendar.DAY_OF_YEAR, -1)将时间向前调整一天,即设置为昨天。接下来,将时间设置为当天的开始时间和结束时间,即设置小时、分钟、秒和毫秒部分。最后,通过calendar.getTimeInMillis()方法获取时间的毫秒表示。

类图

下面是本文代码示例中使用的类图,展示了YesterdayTime类和相关的类之间的关系。

classDiagram
    YesterdayTime -- Calendar
    YesterdayTime ..> System

结果展示

运行上述示例代码,将会输出昨天的开始时间和结束时间。

昨天的开始时间:1634198400000
昨天的结束时间:1634284799999

总结

通过使用java.util.Calendar类,我们可以轻松地获取昨天的开始时间和结束时间。本文提供了相应的代码示例,并展示了类图和结果展示。希望本文能够帮助你在Java中处理时间相关的任务。