我的返回值有错误,它说它没有初始化,但我在它上面的 if then 语句中初始化了它。public static String leapYear(int n) { int j; int r; int f; j = n % 4; String check; if (j == 0) { r = n % 100; if (r == 0) { f = n % 400; if (f == 0) { check = ("The year is a leap year."); } } } else { check = ("The year is not a leap year."); } return check;}
2 回答
翻阅古今
TA贡献1780条经验 获得超5个赞
请尝试删除 else 部分并将值置于您的初始化形式中String:
public static String leapYear(int n){
int j;
int r;
int f;
j=n%4;
String check = "The year is not a leap year.";
if(j==0){
r=n%100;
if(r==0){
f=n%400;
if(f==0){
check=("The year is a leap year.");
}
}
}/*
else{
check=("The year is not a leap year.");
}*/
return check;
}
慕田峪9158850
TA贡献1794条经验 获得超7个赞
如果 j = 0, f != 0,check 的值不会被初始化。类似地,如果 j = 0,则 r != 0 也是如此。
遵循的模式通常应该是,
var = "initialize default value"
if (conditions)
set var
return;
添加回答
举报
0/150
提交
取消