显然,我是Java新手,正在做家庭作业,我给了一个数组,然后不得不用各种for循环进行多次精神操作。我已经完成了我的工作,但是我是新手并且对计算机科学感到兴奋,我想我可以编写一个基本程序来检查我的工作。
这是我编写的代码,我的编译器不停地向我大喊“它找不到符号 - 变量a”到底部。我无知的想法告诉我,当我将数组命名为“a”时,我创建了“a”。遗憾的是,我无法找到与此类似的示例代码。你能告诉我我做错了吗?
import java.util.Scanner;
public class ArrayTest
{
public static void main(String[] args)
{
int[] a = { 1, 2, 3, 4, 5, 4, 3, 2, 1, 0 };// the array I'm working on
}
{
for (int i = 1; i < 10; i++) { a[i] = a[i - 1]; } //the manipulation given
}
{
System.out.println(a[i]);
}
}
谢谢!
答案 0 :(得分:4)
您的a
数组被声明为main
方法的本地成员。
在main
方法之后的下一个块被称为实例块,因为它们与Main
类的实例相关,而不是与其main
的主体相关,静态,可执行方法。
因此,您的for
循环引用了无法访问其范围的变量。
将for
循环和打印输出移到main
方法,方法是删除它们周围的花括号,以便编译代码。
编辑就像Keppil的回答一样。
根据要求,Keppil代码的裸复制粘贴。
public static void main(final String[] args) {
int[] a = { 1, 2, 3, 4, 5, 4, 3, 2, 1, 0 };// the array I'm working on
for (int i = 1; i < 10; i++) {
a[i] = a[i - 1]; // the manipulation given
System.out.println(a[i]);
}
}