/*
* File: Countdown.java
* ----------------------
* This program counts backwards from the value START
* to zero, as in the countdown preceding a rocket launch.
*/
import acm.program.*;
public class Countdown extends ConsoleProgram {
public void run () {
for (int t = START; t >= 0; t-- ); {
println(t);
}
println ("Liftoff!");
}
/* Specifies the value from which to start the countdown.*/
private static final int START = 10;
}
我的问题是以下语句中的(t)不被识别为变量:
println(t);
答案 0 :(得分:4)
更改
for (int t = START; t >= 0; t-- ); {
^
println(t);
}
到
for (int t = START; t >= 0; t--) {
println(t);
}
;
关闭了for
语句,这意味着以下{}
块不属于循环,因此t
未在范围内定义那个街区。
答案 1 :(得分:0)
(这可以说是对Eran's answer的评论,但必须作为获得必要格式的答案发布。)
您应该使用支持Java的编辑器,并使用它定期重新格式化,但尤其是在您不理解错误时。我使用Eclipse重新格式化了问题中的代码。结果如下:
for (int t = START; t >= 0; t--)
;
{
println(t);
}
&#34 ;;"的重要性以及该块与for循环处于同一级别的事实都被原始格式隐藏,并通过重新格式化放置在前后中心