[英]How to pass value of input file and pass it to another method
这是我尝试的方法:我尝试在isDeadlock方法中打印矩阵,输出全为零,并且似乎不保留读取文件后调用矩阵的值,因此无法在方法中使用。
import java.io.*;
import java.util.*;
public class Findcycle {
static int[][] matrix = new int[10000][10000];
public static void main(String[] args) {
{
int x=0, y=0;
try
{
BufferedReader in = new BufferedReader(new FileReader("TestCase1.txt"));
String line;
while ((line = in.readLine()) != null)
{
String[] values = line.split(",");
for (String str : values)
{
int str_int = Integer.parseInt(str);
matrix[x][y]=str_int;
System.out.print(matrix[x][y] + " ");
y=y+1;
}
System.out.println("");
x=x+1;
}
in.close();
System.out.println(isDeadlock(matrix));
}catch( IOException ioException ) {}
}
}
public static class Node{
int id;
List<Node> getNodes = new ArrayList<Node>();
public Node(int id){
this.id=id;
}
}
public static String isDeadlock(int matrix[][]){
List<Node> nodes = new ArrayList<Node>();
for(int i=0;i<matrix.length;i++) {
for(int j=0;j<matrix[i].length;j++) {
System.out.println(matrix[i][j]);
}
}
...
}
我应该怎么做才能解决这个问题? 我是新手。 非常感谢
当您读取文件并填充矩阵时,无需为每行重新设置y。 所以在x=x+1;
您需要添加y = 0;
否则,y将会继续增长,并且所有连续行的数据都将越来越向右偏移。
这不是错误,但由于matrix是静态变量,因此您无需将其作为参数发送给isDeadlock。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.