大家好我的程序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);
}
}
答案 0 :(得分:4)
编译器绝对正确(正如我所期望的那样) - 你永远不会声明一个名为input
的变量。想想为什么你期望它能够工作,你期望变量类型是什么,你期望它被初始化的地方等等。
鉴于您是从两种不同的方法中使用它,您可能希望它是一个实例变量......也许您希望它是Scanner
?考虑这一点很重要 - 找出你期望它工作的原因。如果您刚刚从其他地方复制代码,请反思在将代码包含在您自己的程序中之前真正理解代码的重要性。
此外,遵循Java命名约定并缩进代码以提高可读性是个好主意。
答案 1 :(得分:0)
使用以下内容导入扫描仪类:
import java.util.Scanner;
然后使用以下命令创建Scanner类的实例:
Scanner input = new Scanner(System.in);