java代码取天数 java获取后天日期

Java里,如何得到一个月有多少天按照你的要求,如何得到一个月有多少天,这里并没有说是什么年份,所以默认当年(不同年份的月份天数可能不一样 , 例如闰年的二月)
因此问题变为
输入条件:指定某一个月
输出结果:当年这个月份的天数
思路:在Java8里新的时间API里 , 月份已经被抽象成了枚举Month,所以可以把输入条件定义为枚举类型的Month,然后获取当前时间X , 把时间X的月份修改为输入条件的月份,此时时间X变为X1 , 根据本身提供的方法lengthOfMonth就可以直接得到X1所在当月的天数了
代码:(请将JDK升到8)
public static void main(String[] args) {
System.out.println(countDaysInMonth(Month.MAY));
}
public static int countDaysInMonth(Month month){
// 获取当前时间
LocalDate now = LocalDate.now();
System.out.println(now);
// 把当前时间的月份修改为输入的月份
LocalDate thisMonthDate = now.withMonth(month.getValue());
System.out.println(thisMonthDate);
return thisMonthDate.lengthOfMonth();
}
也可以连着写 , 更美观点
public static int countDaysInMonth(Month month){
return LocalDate.now()
.withMonth(month.getValue())
.lengthOfMonth();
}
非常直观且易懂好用 , 在Java8里with就代表着修改意思,withMonth那就是修改月份,所以整个代码读下来就变成
获取当前时间A
修改A的月份为输入条件得到时间B
计算B所在月的天数
java 获取某月份的具体天数楼上正解,不过楼主问出这个问题可能也是初学者,我就提供一下用简单语法的代码吧
public static void main(String[] args) {
Scanner scan=new Scanner(System.in);
System.out.println("请输入年份");
int year= scan.nextInt();//得到需求年份
System.out.println("请输入月份");
int month=scan.nextInt();//得到需求月份
switch(month){
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
System.out.println(year+"年"+month+"月的天数为:"+31);
break;
case 4:
case 6:
case 9:
case 11:
System.out.println(year+"年"+month+"月的天数为:"+30);
case 2:
if((year%400)==0 || ((year%4)==0)((year%100)!=0)){
System.out.println(year+"年2月的天数为:"+29);
}else{
System.out.println(year+"年2月的天数为:"+28);
}
}
}
java 计算当前时间离月底有多少天以下是Java代码,用于计算中国时间2023年3月8日离当月月底还有多少天:
```java
import java.time.LocalDate;
import java.time.ZoneId;
import java.time.temporal.ChronoUnit;
public class DaysToMonthEnd {
public static void main(String[] args) {
LocalDate today = LocalDate.now(ZoneId.of("Asia/Shanghai"));
LocalDate endOfMonth = today.withDayOfMonth(today.lengthOfMonth());
long daysToMonthEnd = ChronoUnit.DAYS.between(today, endOfMonth);
System.out.println("Days to Month End: " + daysToMonthEnd);
}
}
```
首先,使用 `LocalDate.now(ZoneId.of("Asia/Shanghai"))` 获取当前日期 。这里以亚洲/上海时区为例 。然后 , 使用 `withDayOfMonth` 方法获取当月的最后一天 。接下来,利用 `ChronoUnit.DAYS.between` 方法计算当前时间和当月月底之间的天数差异 。最后,将结果打印到控制台 。
在本例中 , 输出结果为:23 。即距离2023年3月31日(当月月底)还有23天 。
java计算两个日期之间的天数在Java开发物流或是其他功能的时候会用到两个日期相差多天的数据,所以整理了一下备用 。
调用方式:

推荐阅读