创建一个对象数组是必要的

时间:2011-11-20 23:35:53

标签: java arrays object methods

我正在尝试制作一个对象数组。我有两个类,主要和另一个类的方法。我正在运行该程序的是TestTrivia,具有TestTrivia所有方法的类是Question。这个类的构造函数是           公共问题()         {           question =“null”;          answer =“null”;          pointValue = 0;     } 我想做这样的事情        Person personArray [] = new Person [5];

   for(int i=0; i< personArray.length; i++)
   {
    personArray[i] = new Person();
  }

所以我试过了         问题问题阵列[] =新问题[5];       for(int i = 0; i&lt; QuestionArray.length; i ++)        {         QuestionArray [i] = new Question();       } 我试图在两个类中使用它,主要和一个方法。它应该进入主类正确吗?我得到的错误是整个for语句加下划线并说:非法启动类型找不到符号符号:class i location:class triviagame.TriviaGame包QuestionArray不存在 triviagame是包名,“TriviaGame”是类名,“Question”是另一个类名。

2 个答案:

答案 0 :(得分:1)

循环代码必须位于方法中,例如main

此外,如果它们不在同一个包中,则需要导入不在“当前”包中的类。例如,如果Question位于默认包中,则需要将其导入TriviaGame类。

package triviagame;

import Question;

public class TriviaGame {
    public static void main(String[] args) {
        System.out.println("Welcome to the New Age Trivia game");
        System.out.println("You will be asked five questions, let us begin");
        Question questionArray[] = new Question[5];
        for (int i = 0; i < questionArray.length; i++) {
            questionArray[i] = new Question();
        }
    }
}

如果Question类也在triviagame包中,则无需导入。

答案 1 :(得分:1)

您正在尝试在方法或构造函数或初始化程序块之外进行方法调用。不要这样做,而是确保您的代码位于正确的位置,例如在主方法或其他方法中。

public class TriviaGame {

   public static void main(String[] args) 
   {
      System.out.println("Welcome to the New Age Trivia game");
      System.out.println("You will be asked five questions, let us begin");
   }

   // this code is sitting out in the middle of no-where
   Question questionArray[] = new Question[5];
   for(int i=0; i< questionArray.length; i++)
   {
     questionArray[i] = new Question();
   }

}