-4

这是我得到的错误:“线程“主”中的异常 java.lang.RuntimeException:无法编译的源代码 - 类项目中的构造函数 theController * * .theController 不能应用于给定类型;

必需:java.lang.String

发现:int

原因:实际参数 int 无法通过项目中的方法调用转换转换为 java.lang.String * ** .Main.main(Main.java:23)"

我知道它告诉我问题是什么,但我该如何解决呢?

这是我的“主要”代码,

public class Main {

/**
 * @param args the command line arguments
 */
public static void main(String[] args) throws IOException
{


    readFile statesReadfile = new readFile();
    statesReadfile.loadData("States2.txt");
    theController statesQueues = new theController(statesReadfile.getNumStates());
    StatesStack myStatesStack = new StatesStack(statesReadfile.getNumStates());

这是我猜它不匹配的地方,因为我也有错误,

public class theController
{
 public Queues pq1; 
 public Queues pq3;
 public Queues pq5;
 public Queues pq6;
 private StatesStack stateArray;
 private readFile statesReadfile;
 /*
 * 
 */
 public theController(String filename) throws IOException
 {
    statesReadfile = new readFile();
    stateArray = statesReadfile.loadData(filename);

    pq1 = new Queues(6); 
    pq3 = new Queues(12);
    pq5 = new Queues(6);
    pq6 = new Queues(12);
  }// end of 

任何有用的建议将不胜感激,谢谢。

(哦,如果需要,我确实有更多代码)

4

1 回答 1

0

您传递给theController构造函数的参数是 int 但它应该是行中的 StringtheController statesQueues = new theController(statesReadfile.getNumStates());

getNumStates()返回状态数。

于 2013-10-06T18:54:09.560 回答