在java中,如何求当月的第一天和最后一天呢?我们可以使用Java自带的Calendar类来实现。
Calendar cal = Calendar.getInstance(); int year = cal.get(Calendar.YEAR);//获取年 int month = cal.get(Calendar.MONTH) + 1;//获取月,因为月份从0开始计算,所以要+1 int firstDay = 1;//当月第一天 int lastDay = cal.getActualMaximum(Calendar.DAY_OF_MONTH);//当月最后一天 String firstDayStr = year + "-" + month + "-" + String.format("%02d", firstDay);//格式化字符串获取第一天 String lastDayStr = year + "-" + month + "-" + String.format("%02d", lastDay);//格式化字符串获取最后一天
上述代码中,首先获取当前时间的Calendar实例,然后分别获取年和月。之后通过调用Calendar实例的getActualMaximum()方法来获取当月的最后一天。最后,通过字符串格式化,将当月的第一天和最后一天转化成标准的“yyyy-MM-dd”格式。
可以通过以下代码简单的验证结果:
System.out.println("当月的第一天为:"+firstDayStr); System.out.println("当月的最后一天为:"+lastDayStr);
这样就可以很方便的获取当月的第一天和最后一天了。