测试
public static void main(String[] args) { SimpleDateFormat sdf = new SimpleDateFormat("MM"); String format = sdf.format(new Date()); int month = Integer.parseInt(format); System.out.println(month); String firstDayOfMonth = getFirstDayOfMonth(month); System.out.println(month+"月第一天:"+firstDayOfMonth); String lastDayOfMonth = getLastDayOfMonth(month); System.out.println(month+"月的最后一天:"+ lastDayOfMonth); }
11月第一天:2021-11-01 00:00:00 11月的最后一天:2021-11-30 23:59:59
获取第一天
public static String getFirstDayOfMonth(int month) { Calendar calendar = Calendar.getInstance(); // 设置月份 calendar.set(Calendar.MONTH, month - 1); // 获取某月最小天数 int firstDay = calendar.getActualMinimum(Calendar.DAY_OF_MONTH); // 设置日历中月份的最小天数 calendar.set(Calendar.DAY_OF_MONTH, firstDay); // 格式化日期 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); String firstDayDate = sdf.format(calendar.getTime())+" 00:00:00"; return firstDayDate; }
获取最后一天
public static String getLastDayOfMonth(int month) { Calendar calendar = Calendar.getInstance(); // 设置月份 calendar.set(Calendar.MONTH, month - 1); // 获取某月最大天数 int lastDay=0; //2月的平年瑞年天数 if(month==2) { // 这个api在计算2020年2月的过程中有问题 lastDay = calendar.getLeastMaximum(Calendar.DAY_OF_MONTH); }else { lastDay = calendar.getActualMaximum(Calendar.DAY_OF_MONTH); } // 设置日历中月份的最大天数 calendar.set(Calendar.DAY_OF_MONTH, lastDay); // 格式化日期 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); String lastDayDate = sdf.format(calendar.getTime())+" 23:59:59"; return lastDayDate; }
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)