import java.util.*;
import java.text.*;
public class Test {
public static void main(String[] args) {
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
// 获取当前月第一天
Calendar nowFirst = Calendar.getInstance();
nowFirst.set(Calendar.DAY_OF_MONTH, 1);
nowFirst.set(Calendar.HOUR_OF_DAY, 0);
nowFirst.set(Calendar.MINUTE, 0);
nowFirst.set(Calendar.SECOND, 0);
String curMonthFirst = format.format(nowFirst.getTime());
System.out.println("=============== nowfirst:" + curMonthFirst);
// 获取当前月最后一天
Calendar nowLast = Calendar.getInstance();
nowLast.set(Calendar.DAY_OF_MONTH, nowLast.getActualMaximum(Calendar.DAY_OF_MONTH));
nowLast.set(Calendar.HOUR_OF_DAY, 23);
nowLast.set(Calendar.MINUTE, 59);
nowLast.set(Calendar.SECOND,59);
String curMonthLast = format.format(nowLast.getTime());
System.out.println("=============== nowLast:" + curMonthLast);
// 获取前月第一天
Calendar preFirst = Calendar.getInstance();
preFirst.add(Calendar.MONTH, -1);
preFirst.set(Calendar.DAY_OF_MONTH, 1);
preFirst.set(Calendar.HOUR_OF_DAY, 0);
preFirst.set(Calendar.MINUTE, 0);
preFirst.set(Calendar.SECOND, 0);
String preMonthFirst = format.format(preFirst.getTime());
System.out.println("=============== preFirst:" + preMonthFirst);
// 获取前月最后一天
Calendar preLast = Calendar.getInstance();
preLast.set(Calendar.DAY_OF_MONTH, 1);
preLast.set(Calendar.HOUR_OF_DAY, 0);
preLast.set(Calendar.MINUTE, 0);
preLast.set(Calendar.SECOND, -1);
String preMonthLast = format.format(preLast.getTime());
System.out.println("=============== preLast:" + preMonthLast);
}
}
【Java脱坑指南】利用Calendar获取当前月第一天、最后一天,前月第一天、最后一天
最新推荐文章于 2024-07-20 03:04:13 发布