java编写 输入年月,显示这个月的天数。
时间: 2024-10-01 16:02:15 浏览: 4
在Java中,你可以使用java.time包下的MonthDay类来获取指定月份的天数。以下是一个简单的示例代码片段:
```java
import java.time.MonthDay;
import java.time.format.DateTimeFormatter;
public class MonthDays {
public static void main(String[] args) {
// 输入年月
int year = 2023; // 这里假设用户输入的是2023年
int month = 12; // 这里假设用户输入的是12月
// 创建MonthDay对象并获取该月的天数
MonthDay monthDay = MonthDay.of(year, month);
int daysInMonth = monthDay.lengthOfMonth();
// 格式化并打印结果
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");
System.out.println("年" + year + "月" + month + "的天数是:" + daysInMonth);
相关问题
java编写 随机输入年月,要求显示这个月的天数。
在Java中,你可以使用`java.time`包下的`MonthDay`类来获取指定月份的天数。首先,你需要让用户输入年份和月份,然后创建一个`MonthDay`实例,最后获取并打印出该月份的总天数。以下是一个简单的示例:
```java
import java.time.Month;
import java.time.MonthDay;
public class MonthDaysCounter {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入年份:");
int year = scanner.nextInt();
System.out.println("请输入月份(1-12):");
int month = scanner.nextInt();
// 检查输入是否合法
if (month < 1 || month > 12) {
System.out.println("月份无效,请输入1到12之间的数字。");
return;
}
MonthMonthDay monthDay = MonthDay.of(year, month);
int daysInMonth = monthDay.lengthOfMonth(); // 获取该月天数
System.out.printf("年份 %d 的 %d 月有 %d 天。\n", year, month, daysInMonth);
}
}
```
在这个示例中,我们首先读取用户的输入,然后创建`MonthDay.of()`方法的实例,它会返回对应年份和月份的月日组合。`lengthOfMonth()`方法用于获取该月的实际天数。
Java输入年月日判断当年多少天
在Java中,判断给定年月日的年有多少天,首先需要确定该年份是平年还是闰年。平年有365天,而闰年有366天。根据国际标准ISO 80000-1,可以通过以下规则判断一个年份是否为闰年:
1. 如果年份能被4整除且不能被100整除,则是闰年。
2. 如果年份能被400整除,也是闰年。
基于这些规则,我们可以编写一个Java方法来判断并返回一个年份的天数:
```java
public class YearDays {
public static void main(String[] args) {
// 示例:输入年月日
int year = 2023;
int month = 3;
int day = 14;
// 输出该年多少天
System.out.println("年份 " + year + " 有 " + getDaysInYear(year) + " 天");
}
public static int getDaysInYear(int year) {
// 判断是否为闰年
if ((year % 4 == 0 && year % 100 != 0) || (year % 400 == 0)) {
return 366; // 闰年
} else {
return 365; // 平年
}
}
}
```
运行上述代码,会输出年份2023有多少天。通过改变输入的年份,可以得到不同年份的天数。