有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

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

我试图创造生命的游戏,但很早就遇到了困难(

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

问题是我有一个错误,上面写着“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) 个答案

  1. # 1 楼答案

    最简单的解决方案:

      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;
        }
      }