为了账号安全,请及时绑定邮箱和手机立即绑定

我的返回值有一个错误,它说它没有初始化,但我在它上面的 if then 语句中初始化了它

我的返回值有一个错误,它说它没有初始化,但我在它上面的 if then 语句中初始化了它

慕哥9229398 2021-12-30 16:46:21
我的返回值有错误,它说它没有初始化,但我在它上面的 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;

}


查看完整回答
反对 回复 2021-12-30
?
慕田峪9158850

TA贡献1794条经验 获得超7个赞

如果 j = 0, f != 0,check 的值不会被初始化。类似地,如果 j = 0,则 r != 0 也是如此。


遵循的模式通常应该是,


var = "initialize default value"

if (conditions)

  set var

return;


查看完整回答
反对 回复 2021-12-30
  • 2 回答
  • 0 关注
  • 113 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信