当前位置: 首页 > 知识库问答 >
问题:

我的代码没有编译,因为“缺少返回语句”错误,但我不明白为什么?[复制]

阎德义
2023-03-14
   public static String triangleCheck(){ // Triangle Method
      Scanner scan = new Scanner(System.in);
      
            System.out.print("What is the length of side 1? ");
            int side1 = scan.nextInt();
            System.out.print("what is the length of side 2? ");
            int side2 = scan.nextInt();
            System.out.print("What is the length of side 3? ");
            int side3 = scan.nextInt();

      if (!(side1+side2>side3 && side2+side3>side1 && side3+side1>side2))
         return " However your measure don't quite make a full triangle. ";
         
      else if ((side1 > side2) && (side1 > side3))
         if(side1*side1 == side2*side2 + side3*side3)
            return "It is a right triangle.";
         else if((side1*side1) > side2*side2 + side3*side3)
            return "It is an obtuse triangle.";
         else 
            return "It is an acute triangle.";
            
      else if ((side2 > side1) && (side2 > side3))
         if(side2*side2 == side1*side1 + side3*side3)
            return "It is a right triangle.";
            else if((side2*side2) > side1*side1 + side3*side3)
               return "It is an obtuse triangle.";
         else 
            return "It is an acute triangle.";
      
      else if ((side3 > side1) && (side3 > side2))
            if (side2*side2 == side1*side1 + side3*side3)
               return "It is a right triangle.";
            else if((side2*side2) > side1*side1 + side3*side3)
               return "It is an obtuse triangle.";
            else 
               return "It is an acute triangle.";
}

这是我的程序的方法我正在尝试运行我的代码,但它不会运行它说错误:缺少返回语句“}”,我认为这个if/else部分是问题所在,但我无法找出我哪里做错了,以及如何修复它

共有1个答案

苏承载
2023-03-14

在所有if/else条件结束时,添加最后一个else来处理无效输入。

...
else {
    return "Error: Unable to check triangle.";
}
 类似资料:
  • 如果数组中的前4个元素之一是9,则该方法应该返回true。数组长度可能小于4。在我的方法中,由于某种原因,我不断得到“缺少返回语句错误”。

  • 所以我得到了一个编译器错误,我丢失了一个返回语句,我已经研究了其他类似的问题,但我仍然对这个问题感到困惑。 如果之前有人问过这个问题,我会提前道歉,但我已经看过了其他各种问题,我似乎无法弄清楚这一点。

  • 下面的Java不工作,因为它缺少一个return语句。我搞不懂怎么了。有什么想法吗? 即使我去掉字符串u,它也会给出相同的错误,如果我添加int usernameLimit,它也会给出相同的错误。

  • 我正在运行这段java代码,遇到一个错误“缺少返回语句”,请帮助。我在windows中使用cmd运行。

  • 下面是一个链表的简单实现。我刚刚添加了相关代码。首先,我向列表中添加一些值,10,990和10000。当我搜索相同的值时,对于key=10,我得到true,但是对于key=990和key=10000得到false,尽管它应该是true。另外,如果我将第二个值从990更改为99,并搜索key=99,这一次我得到的是true。 我不确定是否使用泛型类型。我想我在那里做错了什么。因为如果我用int替换泛