如果我的for循环中有一个int,我怎么能在for循环后打印出来。它是一个错误,说我不是一个变量?
for (int i = 1; i < ar.length; i++) {
}
System.out.println(i);
答案 0 :(得分:4)
你不能创建局部变量(在方法中声明的变量)two spaces
;这只适用于成员变量(类级别的变量,在方法外声明)。
您必须了解范围。变量仅在范围内可见。局部变量的范围是从它定义的点到它定义的块的结束public
。对于在}
中声明的变量,范围是{{1}的主体} {statement for
之后的for
。
因此,变量{ ... }
在for
语句的主体之外不存在。
您必须在i
:
for
i
答案 1 :(得分:1)
Workspaces
当你在循环中声明变量(没有for (int i = 1; i < ar.length; i++) {
}
时,请注意),它只在循环内部可用。如果你想在循环之外引用它,请将声明移出循环。
public
请注意,这只会打印一行。它将在循环结束后打印int i;
for (i = 1; i < ar.length; i++) {
}
System.out.println(i);
的最终值。
如果您打算在循环迭代时打印i
的所有值,则应该在循环内移动打印调用。在这种情况下,您可以将i
作为循环变量。
i