需要帮助发现我的代码中有关通过缓冲区读取矩阵的错误

时间:2014-03-09 15:49:39

标签: java output

这是一个家庭作业问题,但我已经工作了很长一段时间,我必须稍微失明,所以我真的很感激帮助发现错误。

public class Maze {

    int[][] grid;
    private final int TRIED = 2;
    private final int PATH = 3;

    public Maze(String fileName) throws IOException {
        BufferedReader in = new BufferedReader(new FileReader(fileName));
        String s;
        String [] aux= new String [2];
        int x=0; 

        aux=in.readLine().split("\\s*[, .]\\s*");
        int dimensao=Integer.parseInt(aux[0]);
        String [][] gridString= new String [dimensao][dimensao];
        grid= new int[dimensao][dimensao];

         while ((s=in.readLine())!=null){
            gridString [x]=s.split("\\s*[,.]\\s*");
            x++;
            System.out.println(s);
        }
         System.out.println();
        for (int i=0;i<gridString.length;i++){
            for(int j=0;j<gridString[0].length;j++){
                System.out.print(gridString[i][j]+" ");
                switch (gridString[i][j]) {
                    case "true":
                        grid[i][j]=1;
                        break;
                    case "false":
                        grid[i][j]=0;
                        break;
                }
            }            
            System.out.println();
            }
        for (int i=0;i<grid.length;i++){
            for(int j=0;j<grid[0].length;j++){
                System.out.print(grid[i][j]);
            }
            System.out.println();
        }           
    }

在另一个类类中,我使用这个输入来调用它:

 5 

true, false, true, false, false 

true, false, true, true, true 

false, false, false, false, true

true, true, false, true, true

false, false, false, true, false

目标是将&#34; true&#34;转换为整数矩阵。由1和&#34; false&#34;表示为0。 事情就是我的输出就是这个

10100

10110

00000

11010

00010

而我无法弄清楚&#34;真实&#34;最后一栏的价值观。

1 个答案:

答案 0 :(得分:1)

我认为这可能是第二次分裂中缺少的空间 - 也许是以“真实”的方式阅读