📅  最后修改于: 2023-12-03 15:11:50.934000             🧑  作者: Mango
在Java中,我们可以通过以下三种方法来获取一个月的最后一天:
我们可以先获取月份,然后通过withDayOfMonth()方法将日期设置为该月的最后一天,如下所示:
import java.time.LocalDate;
public class LastDayOfMonth {
public static void main(String[] args) {
LocalDate date = LocalDate.now(); // 获取当前日期
LocalDate lastDayOfMonth = date.withDayOfMonth(date.lengthOfMonth()); // 获取该月的最后一天
System.out.println("最后一天:" + lastDayOfMonth);
}
}
输出结果:
最后一天:2022-09-30
我们可以创建一个Calendar对象,然后通过getActualMaximum()方法获取该月的天数,最后将日期设置为该月的最后一天,如下所示:
import java.util.Calendar;
public class LastDayOfMonth {
public static void main(String[] args) {
Calendar calendar = Calendar.getInstance(); // 获取当前时间的Calendar对象
int year = calendar.get(Calendar.YEAR);
int month = calendar.get(Calendar.MONTH);
int lastDay = calendar.getActualMaximum(Calendar.DAY_OF_MONTH); // 获取该月的天数
calendar.set(year, month, lastDay); // 将日期设置为该月的最后一天
System.out.println("最后一天:" + calendar.getTime());
}
}
输出结果:
最后一天:Fri Sep 30 16:50:17 CST 2022
我们可以先获取当前时间的Date对象,然后通过getDate()方法获取该月的天数,最后将日期设置为该月的最后一天,如下所示:
import java.util.Date;
public class LastDayOfMonth {
public static void main(String[] args) {
Date now = new Date(); // 获取当前时间
int lastDay = getLastDayOfMonth(now); // 获取该月的天数
now.setDate(lastDay); // 将日期设置为该月的最后一天
System.out.println("最后一天:" + now);
}
private static int getLastDayOfMonth(Date date) {
Calendar calendar = Calendar.getInstance(); // 创建Calendar对象
calendar.setTime(date); // 设置时间
return calendar.getActualMaximum(Calendar.DAY_OF_MONTH); // 获取该月的天数
}
}
输出结果:
最后一天:Fri Sep 30 17:12:25 CST 2022
以上就是三种获取一个月的最后一天的方法,您可以根据具体需求选择适合自己的方法。