如何在Java中获取当月的时间

流程图

stateDiagram
    [*] --> 输入年月
    输入年月 --> 获取当月的第一天
    获取当月的第一天 --> 获取当月的最后一天
    获取当月的最后一天 --> 输出结果
    输出结果 --> [*]

类图

classDiagram
    class DateUtil {
        +getFirstDayOfMonth(int year, int month) : String
        +getLastDayOfMonth(int year, int month) : String
    }

代码实现

首先,我们需要创建一个工具类DateUtil来处理获取当月时间的逻辑。

public class DateUtil {

    // 获取当月的第一天
    public static String getFirstDayOfMonth(int year, int month) {
        Calendar calendar = Calendar.getInstance();
        calendar.set(Calendar.YEAR, year);
        calendar.set(Calendar.MONTH, month - 1);
        calendar.set(Calendar.DAY_OF_MONTH, 1);
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
        return sdf.format(calendar.getTime());
    }
    
    // 获取当月的最后一天
    public static String getLastDayOfMonth(int year, int month) {
        Calendar calendar = Calendar.getInstance();
        calendar.set(Calendar.YEAR, year);
        calendar.set(Calendar.MONTH, month - 1);
        calendar.set(Calendar.DAY_OF_MONTH, calendar.getActualMaximum(Calendar.DAY_OF_MONTH));
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
        return sdf.format(calendar.getTime());
    }
}

然后,在主程序中调用这两个方法来获取当月的第一天和最后一天。

public class Main {

    public static void main(String[] args) {
        int year = 2022;
        int month = 9;
        
        String firstDay = DateUtil.getFirstDayOfMonth(year, month);
        String lastDay = DateUtil.getLastDayOfMonth(year, month);
        
        System.out.println("当月的第一天:" + firstDay);
        System.out.println("当月的最后一天:" + lastDay);
    }
}

运行Main类,即可得到当月的第一天和最后一天的输出结果。

通过上述步骤,你已经学会了如何在Java中获取当月的时间。祝贺你,继续努力学习,成为一名优秀的开发者!