Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/327.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
我如何摆脱错误java:30:error:'else'而不使用'if'else if?为什么非要这样呢?_Java - Fatal编程技术网

我如何摆脱错误java:30:error:'else'而不使用'if'else if?为什么非要这样呢?

我如何摆脱错误java:30:error:'else'而不使用'if'else if?为什么非要这样呢?,java,Java,代码如下: import java.util.Scanner; public class FantahunKeburAlmostIsoscelesRightTriangle{ public static void main (String []args){ Scanner s = new Scanner(System.in); System.out.println("Enter the longest side: "); double longest = s.next

代码如下:

import java.util.Scanner;
public class FantahunKeburAlmostIsoscelesRightTriangle{
public static void main (String []args){

    Scanner s = new Scanner(System.in);

    System.out.println("Enter the longest side: ");
    double longest = s.nextDouble();
    System.out.println("Enter 2nd side: ");
    double second = s.nextDouble();
    System.out.println("Enter 3rd side: ");
    double third = s.nextDouble();

    double longsq = longest*longest;
    double secondsq = second*second;
    double thirdsq = third*third;
    double secthirdsq = secondsq*thirdsq;

if  (secthirdsq==longsq);
{
System.out.println("This triangle is an almost-Isosceles right triangle. ");

}
else {
System.out.println("This triangle is not a right triangle. ");


}}
}
我还试过其他方法,如果是secthirdsq=朗斯克;所以它会打印出这个三角形不是直角三角形。但是在那之后我犯了大约6个错误,所以任何帮助都将不胜感激!
如果需要更多的信息,请随意询问

您的If结尾有一个分号,这使得If语句中的代码实际上是一个代码块,无论执行什么操作都可以执行。然后,编译器看到下一个代码块是else,并注意到前一个代码块实际上不是if

if  (secthirdsq==longsq);

第一个if后面有一个分号;语法是:

if(condition) {
...
} else {
...
}
编辑:

else没有条件,要向else添加条件,您必须执行以下操作

否则如果条件

虽然在您的情况下,这是多余的,因为如果a==b为false,那么使用just-else将执行a的代码!=b

编辑2:

Java中if-else的正确用法:

表示:如果满足条件,则每隔一次执行代码1,执行代码2

if (condition 1) {
code 1
} else if (condition 2) {
code 2
} 

很明显,条件1满足-执行代码1,条件2满足-执行代码2。在这种情况下,如果不满足条件1,则不必执行代码2。此外,您还可以添加越来越多的else if语句。这就是关于if's所需要知道的全部。

如果secthirdsq==longsq;如果secthirdsq==LongSqOkay的可能重复,那么我更改了它,但我想要这个,secthirdsq=longsq,在else语句中,但它不允许我看到以下错误:java:30:error:not a statement else secthirdsq=朗斯克@Kebur=是Java中赋值的符号,而==是值比较的符号。我要很快写一篇新文章。我不确定我是否理解你的意思。我要写一篇带有新错误的新文章,但我必须等待90分钟。这是新的错误。java:31:error:'else'没有'if'else if secthirdsq=朗斯克;下面是我试图包含的新代码:else if secthirdsq=朗斯克;{System.out.println这个三角形不是直角三角形。}我将把我的问题扩大一点,给我5分钟,让我读一读。我不确定这有多大帮助。如果secthirdsq==最长*最长{System.out.println这个三角形是一个几乎等腰的直角三角形。}否则如果secthirdsq!=longsq;{System.out.println此三角形不是直角三角形。;我不明白为什么即使输入构成直角三角形的值,也只执行第二个println。顺便说一下,这是一个新问题
if (condition 1) {
code 1
} else if (condition 2) {
code 2
}