加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

java – 编译器说缺少return语句但我已经有3

发布时间:2020-12-15 02:07:00 所属栏目:Java 来源:网络整理
导读:这很奇怪.我的编译器说我错过了一个return语句,但我已经有3个. 这是我的代码: public int tortoiseMoves(){ int i = tGen(); if (i = 1 i = 5) { int fastplod = 3; return fastplod; } if (i = 6 i = 8) { int slowplod = 1; return slowplod; } if (i = 9
这很奇怪.我的编译器说我错过了一个return语句,但我已经有3个.
这是我的代码:

public int tortoiseMoves()
{
    int i = tGen();
    if (i >= 1 && i <= 5)
    {
        int fastplod = 3;
        return fastplod;
    }

    if (i >= 6 && i <= 8)
    {
        int slowplod = 1;
        return slowplod;
    }

    if (i >= 9 && i <= 10)
    {
        int slip = -6;
        return slip;
    }
}

解决方法

您必须确保始终返回一个值.如果你的所有条件都失败了,你就不会退货.

修复将链接你的if语句,因为它们是独占的,并使用else来捕获所有其他情况.

public int tortoiseMoves() {
    int i = tGen();
    if (i >= 1 && i <= 5)
    {
        int fastplod = 3;
        return fastplod;
    }

    else if (i >= 6 && i <= 8)
    {
        int slowplod = 1;
        return slowplod;
    }

    else if (i >= 9 && i <= 10)
    {
        int slip = -6;
        return slip;
    }
    else {
        // return something or throw exception
        return 0;
    }
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读