Java 在for循环中编译时出错
当试图编译我的文件AverageRainfall.java时,我不断得到一个变量错误,即两个符号不存在。我已经包含了受影响的代码,其中包括两个定义的变量和接收错误的System.out.print命令Java 在for循环中编译时出错,java,for-loop,syntax-error,undefined-symbol,Java,For Loop,Syntax Error,Undefined Symbol,当试图编译我的文件AverageRainfall.java时,我不断得到一个变量错误,即两个符号不存在。我已经包含了受影响的代码,其中包括两个定义的变量和接收错误的System.out.print命令 System.out.println("Enter the rainfall, in inches, for each month. "); for(int y = 1; y <= years; y++) for(int m = 1; m <= NUM_MON
System.out.println("Enter the rainfall, in inches, for each month. ");
for(int y = 1; y <= years; y++)
for(int m = 1; m <= NUM_MONTHS; m++);
System.out.print("Year" + y + "month" + m + ": ");
monthRain = keyboard.nextDouble();
在添加第一个评论者建议的更改后,我不再收到“找不到符号”错误,但现在我被告知“y”和“m”可能尚未初始化,并且它给了我一个直接跟随它的while循环错误。受影响的代码:
{
System.out.println("Enter the rainfall, in inches, for each month. ");
for(int y = 1; y <= years; y++){
for(int m = 1; m <= NUM_MONTHS; m++){
System.out.print("Year" + y + "month" + m + ": ");
monthRain = keyboard.nextDouble();
}
}
while (monthRain < 0)
{
System.out.print("Invalid. Enter 0 or greater: ");
monthRain = keyboard.nextDouble();
}
}
{
System.out.println(“输入每个月的降雨量,单位为英寸”);
对于(int y=1;y尝试添加括号。同时删除内部循环后的分号
或
如果在循环外使用这两个变量,则必须在循环外初始化该变量
System.out.println("Enter the rainfall, in inches, for each month. ");
for(int y = 1; y <= years; y++){
for(int m = m; m <= NUM_MONTHS; m++){
System.out.print("Year" + y + "month" + m + ": ");
}
monthRain = keyboard.nextDouble();
}
System.out.println(“输入每个月的降雨量,单位为英寸”);
对于(int y=1;y您的m被错误地初始化
int m = m;
这应该会失败,因为m尚未指定值。
你的意思是int m=y;
?哪一行是第26行?去掉第二个for循环末尾的分号。谢谢你解决了这个问题,但是现在我得到了一个与“while”循环相关的新错误,它告诉我我的变量可能没有初始化。变量的数据类型是什么,如果是I,你是如何初始化它的nteger,在校准while循环之前,您必须指定一个默认值,如0Try,以打印变量monthRain
,以查看当前值是什么,或者它没有。这实际上起了作用,现在我必须检查并获得所有逻辑错误。非常感谢!我将其更改为m=1,因为for循环从1变为12
int m = m;