用Java编写 输入年与月,来判定该月一共有多少天 比如2008年2月 2008年是闰年,其2?

作者&投稿:聂馨 (若有异议请与网页底部的电邮联系)
~ 设计一个JudgeDay类,其中包含一个静态方法dayOfMonth(),用于判断某一年某个月的天数。具体代码如下所示:
public class JudgeDay {
/**
* 判断某一年某个月的天数
* @param year 年份
* @param month 月份
* @return 该月的天数
*/
public static int dayOfMonth(int year, int month) {
// 创建Calendar对象并设置年月
Calendar calendar = Calendar.getInstance();
calendar.set(Calendar.YEAR, year);
calendar.set(Calendar.MONTH, month - 1);
calendar.set(Calendar.DATE, 1);
// 获取该年月的最大天数
int maxDay = calendar.getActualMaximum(Calendar.DAY_OF_MONTH);
// 返回该月的天数
return maxDay;
}
}
在上述代码中,我们定义了一个静态方法dayOfMonth(),该方法接受年份和月份作为参数,返回该年月的天数。具体实现方式与前面的示例代码类似,使用Calendar类获取该年月的最大天数,并返回该天数。
使用该方法可以在其他类中直接调用在其他类中使用JudgeDay类的dayOfMonth()方法可以直接调用,示例代码如下:
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入年份:");
int year = scanner.nextInt();
System.out.println("请输入月份:");
int month = scanner.nextInt();
// 调用JudgeDay类的dayOfMonth()方法获取该月的天数
int maxDay = JudgeDay.dayOfMonth(year, month);
// 输出该月的天数
System.out.println(year + "年" + month + "月共有" + maxDay + "天");
}
}
在上述代码中,我们先通过Scanner类获取用户输入的年份和月份,然后调用JudgeDay类的dayOfMonth()方法获取该年月的天数,并输出该月的天数。需要注意的是,在调用dayOfMonth()方法时,需要使用类名.方法名的方式进行调用,因为该方法是一个静态方法。

以下是一个简单的Java程序,用于根据输入的年份和月份来确定该月有多少天:
```java
import java.util.Scanner;
public class JudgeDay {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入年份:");
int year = scanner.nextInt();
System.out.print("请输入月份:");
int month = scanner.nextInt();
int days = dayOfMonth(year, month);
System.out.println(year + "年" + month + "月共有" + days + "天");
}

public static int dayOfMonth(int year, int month) {
int days = 0;
switch (month) {
case 2:
if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) {
days = 29;
} else {
days = 28;
}
break;
case 4:
case 6:
case 9:
case 11:
days = 30;
break;
default:
days = 31;
break;
}
return days;
}
}
```
上述程序中,`dayOfMonth()` 方法是一个静态方法,它接收两个参数 `year` 和 `month`,返回对应年份和月份的天数。在 `main()` 方法中,我们通过 `Scanner` 类来获取用户输入的年份和月份,并调用 `dayOfMonth()` 方法来计算该月有多少天。最后输出结果。
以上程序仅提供一个简单的实现示例,实际应用中可能需要考虑更多的情况,例如输入的年份和月份是否合法,如何处理输入错误等。


寿光市17272932457: 在java里怎么做 从键盘接收4位数字的年份和月份,并判断输出该年该月共有多少天.. -
苍梧轮珍哌: import java.util.Scanner;public class countday { /*** @param args*/public static void main(String[] args) {// TODO Auto-generated method stubScanner input = new Scanner(System.in);System.out.println("请输入年份");int ...

寿光市17272932457: java输入年份和月份,判断输出该月有多少天!闰年2月:28天,!平年:28天 -
苍梧轮珍哌: Scanner scan = new Scanner(System.in);System.out.println("请输入一个年份:");//向控制台输出一个提示信息long year;try{year = scan.nextLong();System.out.println("请输入一个月份:");Long month=scan.nextLong();if(...

寿光市17272932457: 用java编写:输入任意年份和月份,输出对应月份的天数. -
苍梧轮珍哌: 用 java编写:输入任意年份和月份,输出对应月份的天数,首先判断输入年份是否是闰年,然后使用switch 方法判断月份,判断代码如下: public class GetDays {public static int getDays(int year, int month) { int days = 0; boolean isLeapYear = ...

寿光市17272932457: java如何判断是否为有效的年月日 -
苍梧轮珍哌: 年 大于 1900 月 大于0,小于13 日 if(月=1,3,5,7,8,10,12){日大于1小于等于31}; else if{月=4,6,9,11}{日大于1小于等于30}; else if(年是润年){日大于1小于等于29}; else {日大于1小于等于28} 闰年的判断公式如下:能被4整除且不能被100整除(year%4==0&&year&&100!=0)

寿光市17272932457: java 设计一个程序,根据年份和月份判断该月有多少天 最好有具体程序,谢谢了 -
苍梧轮珍哌: /* year:the year m:value is 1 to 12 return value:the how many days of the month.return 0 if error.*/ public int getDaysofMonth(int year,int m){ if(m==1 ||m== 3 ||m== 5 ||m== 7 ||m== 8 ||m==10 ||m==12) return 31; else if(m == 4||m==6 ||m== 9 ||m== 11) return 30; else if(m==2){ if(year %4 ==0 && year %100

寿光市17272932457: 在java中怎么用循环实现:“输入某年某月某日,判断这一天是这一年的第几天?” -
苍梧轮珍哌: 输入判断什么的就不做了 import java.util.Scanner; public class test2 { public static void main(String[] args) { Scanner s = new Scanner(System.in); int year, month, day; int allDay; int []days1 = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}; int []days2 ...

寿光市17272932457: java中怎么用if语句和判断语句实现提示用户输入年份和月份,根据用户的输入计算当月的天数 -
苍梧轮珍哌: import java.util.Calendar; import java.util.Scanner; public class Test { public static void main(String[] args) { getMaxday(); } public static void getMaxday(){ System.out.println("请输入年份"); Scanner sc=new Scanner(System.in); int year=sc....

寿光市17272932457: 输入某年某月某日,请判断这一天是这一年的第几天? 请用java编程 -
苍梧轮珍哌: import java.util.*;public class Main3{ public static void main(String args[]){ int a ,sum = 0; boolean leap = false ,b = false; ...

寿光市17272932457: JAVA中怎么实现,根据用户输入的年份和月份得到当月第1天(该月1号) -
苍梧轮珍哌: 抽了点时间写了些代码:给你看看是不是你想要的,你是初学者把,俺给你加些注释 package yjh.action; import java.text.SimpleDateFormat; //定制日期格式的类 import java.util.Calendar; //日历类 import java.util.Date; //当前日期和时间的Data...

寿光市17272932457: java编程!输入某年某月,判断这一年与这一月分别距离1900年1月1日多少天? -
苍梧轮珍哌: 循环就够了 先得到年的天数365*((2011-1900)-1) 在得到当前天数,date.now,然后如果是闰年+1,继续,直到不是,模运算按照整数+1 剩下的就是月了,递增就好了 _

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网