从文本文件中填充java中的2D数组时出错

时间:2017-01-03 12:14:10

标签: java arrays 2d conways-game-of-life

我正在尝试创造生命游戏,但在早期遇到了困难。 :(

我有一个带有“o”和“*”作为起始网格/矩阵的文本文件,我的构造函数必须读取该文件并用它填充2D数组。

问题是我有一个错误,它说“sc.nextLine();”,我不太确定我缺少什么来填充数组。

import java.io.File;
import java.util.ArrayList;
import java.util.Scanner;

   public class LifeGrid {

   int x, y;

   public LifeGrid(int newy, int newx, String filename) {
   x = newx;
   y = newy;
   File file = new File(filename);
   Scanner sc = new Scanner(file);
   int[][] board = new int[y][x];
   while (sc.hasNext())
   {
      for (int i = 0; i < y; i++)
      {
        for (int j = 0; j < x; j++)
        {
          board[i][j] = sc.nextLine(); <- error here
        }
      }
   }
}

1 个答案:

答案 0 :(得分:0)

最简单的解决方案:

  for (int i = 0; i < y; i++)
  {
    String line = sc.nextLine();
    for (int j = 0; j < x; j++)
    {
      board[i][j] =  line.charAt(j)=='*'?1:0;
    }
  }