“可能没有被初始化”

我收到错误:

TestCounter.java:115:变量计数器可能没有初始化计数器[i] =新计数器(i);

我无法弄清楚如何解决它。 我知道我的class级, Counter ,有效。 下面是我的代码,如果你能看一下,我会非常高兴。 此代码包含在TestCounter类的main方法中。

  if(success) { Counter[] counters; for(int i=0; i<30; i++) { counters[i] = new Counter(i); System.out.println(counters[i].whatIsCounter()); } } 

你还没有创建数组,你刚刚声明了变量。

你需要这样做:

 Counter[] counters = new Counter[30]; 

或类似的东西

您需要初始化counters数组。 像这样的东西:

 if(success) { Counter[] counters=new Counters[30]; for(int i=0; i<30; i++) { counters[i] = new Counter(i); System.out.println(counters[i].whatIsCounter()); } } 

通过声明Counter[] counters您实际上并没有创建数组,您可以简单地声明Counter[]类型的引用变量counters

Counter[] counters=new Counters[30]将创建一个大小为30的Counter类型的数组,每个元素保持空引用。