java - 构造函数的循环方法

标签 java loops

我应该如何循环这个构造函数?参数从文本文件传递。我尝试过 while 循环,但它甚至不读取文本文件的第一行。我的文本文件包含 ff: s0,a,s0,a,-1(--下一行--)s0,b,s0,b,-1。如果我不使用循环,它会获取文本文件的内容,并将其传递给构造函数。
编辑:我已经更正并标记了要循环的构造函数。如果我包含第二个 while 循环,它不会获取文本文件的内容。

Edit2:第一个 while 循环将文本文件的内容放入名为参数的数组中。第二个 while 循环执行循环,将参数数组的内容传递给变量,然后将其传递给构造函数。这第二个 while 循环不起作用。

Scanner scanner = new Scanner(new File("D:\\Kirk\\Documents\\NetBeansProjects\\TuringMachine\\src\\turingmachine\\Algorithms.txt"));
String data = scanner.nextLine();
String[] arguments = data.split(",");
StringTokenizer st = new StringTokenizer(data);
int i = 0;
while (st.hasMoreTokens()) { //loop for putting contents of text file to array
    arguments[i++] = st.nextToken();
}//end loop


while(scanner.hasNextLine()){  //loop transition function(not working)
    String fromstate = arguments[0];
    String read = arguments[1];
    String tostate = arguments[2];
    String write = arguments[3];
    int move = Integer.parseInt(arguments[4]);
    trans.add(new Transition(new StateTapeSymbolPair(fromstate, read), new StateTapeSymbolPair(tostate, write),move));
    //loop the above constructor
}//end while

最佳答案

您没有循环获取每行的数据。 这里有一个例子:

Scanner scanner = new Scanner(new File("Algorithms.txt"));

    while(scanner.hasNext()){

         String data = scanner.nextLine();     // your line          
         String[] arguments = data.split(","); // split the line

         // getting data for each data inside the line
              String fromstate = arguments[0];
                String read = arguments[1];
                String tostate = arguments[2];
                String write = arguments[3];
                int move = Integer.parseInt(arguments[4]);

               System.out.println(fromstate+"-"+read+"-"+tostate+"-"+write+"-"+move);

        }

关于java - 构造函数的循环方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46260483/

相关文章:

java - Mockito 可以模拟包级可见性接口(interface)吗?

java - 集成 Maven 报告插件

java - 添加 jar 文件后的 Android Studio preDexDebug

java - 使用 persistence.xml 创建 Hibernate SessionFactory

jQuery/Ajax : How to loop through array as part of Ajax success function

ruby - Rails 3 从 Collection.each block 返回数组

regex - vbscript 中检查字符串是否包含多个单词/短语列表中的单词/短语的最快方法

java - 如何将我的本地 jar 包含到 Maven 中?

java - 使用 ArrayList 显示多个 vector 对象 Java

c++ - 编译器可以优化可变长度循环吗?