我试图让方法LeapYear返回它是否是LeapYear(返回它实际上是if语句)。本质上,我是编码的新手,我不知道如何返回字符串值而不是int或double。有人可以帮我吗?
public static int LeapYear(int y) {
int theYear;
theYear = y;
if (theYear < 100) {
if (theYear > 40) {
theYear = theYear + 1900;
} else {
theYear = theYear + 2000;
}
}
if (theYear % 4 == 0) {
if (theYear % 100 != 0) {
System.out.println("IT IS A LEAP YEAR");
} else if (theYear % 400 == 0) {
System.out.println("IT IS A LEAP YEAR");
} else {
System.out.println("IT IS NOT A LEAP YEAR");
}
} else {
System.out.println("IT IS NOT A LEAP YEAR");
}
}
答案 0 :(得分:4)
我不知道如何返回字符串值而不是int或double。
您将返回类型设为String
public static String leapYear(int y)
并返回String而不是int
return "IT IS NOT A LEAP YEAR";
答案 1 :(得分:1)
public static String LeapYear(int y) {
int theYear;
theYear = y;
String LEAP_YEAR = "IT IS A LEAP YEAR";
String NOT_A_LEAP_YEAR = "IT IS NOT A LEAP YEAR";
if (theYear < 100) {
if (theYear > 40) {
theYear = theYear + 1900;
} else {
theYear = theYear + 2000;
}
}
if (theYear % 4 == 0) {
if (theYear % 100 != 0) {
//System.out.println("IT IS A LEAP YEAR");
return LEAP_YEAR;
} else if (theYear % 400 == 0) {
//System.out.println("IT IS A LEAP YEAR");
return LEAP_YEAR;
} else {
// System.out.println("IT IS NOT A LEAP YEAR");
return NOT_A_LEAP_YEAR ;
}
} else {
//System.out.println("IT IS NOT A LEAP YEAR");
return NOT_A_LEAP_YEAR ;
}
return NOT_A_LEAP_YEAR ;
}
答案 2 :(得分:1)
您可以使用以下方法:
static boolean isLeapYear(final int year) {
return year % 4 == 0 && (year % 100 != 0 || year % 400 == 0);
}
所以:
public static void LeapYear(int y) {
if (y % 4 == 0 && (y % 100 != 0 || y % 400 == 0)) {
System.out.println("IT IS A LEAP YEAR");
} else {
System.out.println("IT IS NOT A LEAP YEAR");
}
}