Подтвердить что ты не робот

Ошибка компиляции Java: не удается найти символ

Эй, я только начинаю свою первую книгу по программированию на Java, поэтому это должно быть легким решением. Общаюсь с моим новым знанием условностей, и я получаю ошибку названия.

Здесь код:

import java.util.Scanner;

public class Music
{
    public static void main( String[] args )
    {

        Scanner x = new Scanner( System.in );

        int y;

        System.out.print( "Which is better, rap or metal? 1 for rap, 2 for metal, 3 for neither" );
        y = input.nextInt();

        if ( y == 1 )
            System.out.print( "Someone hasn't heard\nhttp://www.youtube.com/watch?v=Vzbc4mxm430\nyet" );

        if ( y == 2 )
            System.out.print( "Someone hasn't heard\nhttp://www.youtube.com/watch?v=s4l7bmTJ7j8\nyet" );

        if ( y == 3 )
            System.out.print( "=/ \nMusic sucks anyway." );
    }
}

Когда я пытаюсь скомпилировать:

Music.java:13: error: cannot find symbol
y = input.nextInt();



symbol: variable input
location: class Music
1 error
4b9b3361

Ответ 1

В сообщении об ошибке сообщается, что ваша переменная 'input' не существует в вашей области. Вероятно, вы захотите использовать свой объект Scanner, но вы назвали его "x", а не "input".

Scanner input = new Scanner( System.in );

Должен его исправить.

Ответ 2

Здесь вы не указали переменную input. Вы должны иметь:

Scanner input = new Scanner( System.in );

Ответ 3

Вы использовали переменный ввод, как в

y=input.nextInt();

Вы не можете этого сделать, потому что это не переменная. Я полагаю, вы имели в виду, что это "x", или вы могли бы заменить

Scanner x = new Scanner( System.in );

с

Scanner input = new Scanner( System.in );

Ответ 4

В качестве альтернативы вы можете просто изменить:

y = input.nextInt();

To:

y = x.nextInt();

Тогда это сработает.

Это потому, что input не определен нигде в коде. Предоставленный код предполагает, что вы ожидаете, что это экземпляр класса Scanner. Но экземпляр класса Scanner на самом деле определяется как x, а не input.

Ответ 5

 Scanner x = new Scanner( System.in ); 
 int y = x.nextInt();

Ответ 6

Scanner input = new Scanner( System.in );
int y = input.nextInt();

(или)

Scanner x = new Scanner( System.in ); 
int y = x.nextInt();

Ответ 7

это простое решение y = x.nextInt(); вместо y = input.nextInt();