1. ホーム
  2. java

[解決済み】エラー:'if'のない'else'エラー

2022-01-17 22:27:32

質問

if文のないelse文を取得する。

import java.util.Scanner;

public class LazyDaysCamp
{
    public static void main (String[] args)
    {
        int temp;
        Scanner scan = new Scanner(System.in);

        System.out.println ("What's the current temperature?");
        temp = scan.nextInt();
        if (temp > 95 || temp < 20);
            System.out.println ("Visit our shops");
            else if (temp <= 95)
                if (temp >= 80)
                System.out.println ("Swimming");
                else if (temp >=60) 
                    if (temp <= 80)
                    System.out.println ("Tennis");
                    else if (temp >= 40)
                        if (temp < 60)
                        System.out.println ("Golf");
                        else if (temp < 40)
                            if (temp >= 20)
                            System.out.println ("Skiing");                                                                                                                                                                                                                                                                   
    }
}

カスケード接続を使用する必要があるため、このように表示されます。また、私が正しくカスケード接続を行ったかどうか教えてください。私はカスケード接続の良い例を見つけることができなかったので、私はカスケード接続の意味を知っていることから最善を尽くしただけです。

LazyDaysCamp.java:14: error: 'else' without 'if'
            else if (temp <= 95)
            ^
1 error

これは私が得たエラーです

どうすればいいですか?

この行の最後にあるセミコロンを削除してください。

if (temp > 95 || temp < 20);

そして、ぜひ中括弧を使用してください。Javaは ではなく Pythonのように、コードをインデントすると、新しいブロックスコープが作成されます。安全策をとって、常に波括弧を使うようにしましょう。 いつ を使えば、省略することができます。