0

こんにちは、プログラム Java に問題があります。既にマザー プロジェクトに io 入力をインポートしていますが、それは問題ではありません。エラーは次のとおりです。

C:\Users\test\Desktop\Prodotto.java:26: cannot find symbol
symbol : variable input
location: class Prodotto
line=input.readLine();
^

で、これがプログラムです。どうすれば解決できますか?

public class Prodotto
{
String descrizione;
double prezzoVendita;
int giacenza;
String line;


Prodotto(){}

void Valore()
{
    System.out.print("Valore di magazzino = ");
    System.out.println(giacenza*prezzoVendita);
}

void Carico()
{
    int carico=0;
    String line;
    do
    {
        try
        {
            System.out.println("Di quanto è aumentata la giacenza?");
            line=input.readLine();
            carico=Integer.parseInt(line);
        }
        catch (Exception e)
        {
            System.out.println("il carico deve essere maggiore di 0");  
        }

        if(carico<=0)
        {

        }
        else
        {
            giacenza=giacenza+carico;   
        }
    }
    while(carico<=0);
}

void Scarico()
{
    int scarico=0;
    String line;
    do
    {
        try
        {
            System.out.println("Di quanto è diminuita la giacenza?");
            line=input.readLine();
            scarico=Integer.parseInt(line);
}
catch (Exception e)
{
System.out.println("la giacenza non può essere minore di 0");
}

if(scarico<=0)
{

}
else
{
giacenza=giacenza-scarico;
}
}
while(giacenza<=0);
}

void Visualizza()
{
System.out.println("Descizione prodotto = "+ descrizione);
System.out.println("Prezzo di vendita = "+ prezzoVendita);
System.out.println("giacenza = "+ giacenza);
}
}
4

2 に答える 2

4

コンパイラは絶対に正しいです (私が期待しているように) - という変数を宣言することはありませんinputなぜそれが機能すると予想したか、変数の型が何であると予想したか、初期化されると予想した場所などについて考えてください。

2 つの異なるメソッドから使​​用していることを考えると、それをインスタンス変数にしたいと思うかもしれませんScanner。ただし、これについて考えることが重要です-なぜそれがうまくいくと期待したのかを理解するために。他の場所からコードをコピーしたばかりの場合は、コードを自分のプログラムに組み込む前に、コードを本当に理解することがいかに重要かを考えてみてください。

さらに、Java の命名規則に従い、読みやすくするためにコードをインデントすることをお勧めします。

于 2013-04-21T18:55:23.953 に答える