在String类型的2D数组中插入String值

时间:2018-03-01 21:24:52

标签: java multidimensional-array type-conversion

我正在尝试从文件中读取内容并将其放入Object类型Box的2D数组中。它给了我一个类型错误。有人可以帮帮我吗?

import java.io.*;
import java.util.Scanner;

public class Gameboard
{
  private Box[][] bx;

  public Gameboard (String fileNm)
   {
    try {

        BufferedReader input = new BufferedReader(fileNm);
        Scanner lineReader = new Scanner(input.readLine());

        while (lineReader.next() != null)
        {
            bx = new Box[row][col];
            for(int i = 0; i < row; i++)
               for(int j = 0; j < col; j++)
               {
                    bx[row][col] = lineReader.next(); // the error is here
               }
        }

}

1 个答案:

答案 0 :(得分:1)

预计会出现错误。在bx[row][col] = lineReader.next();中,您尝试读取值。默认情况下,Scanner#next()会返回String,但您尝试将其存储为Box类型的数组。

您应该创建一个Box对象,而不是这样做。此外,您知道您没有遍历所有行和列。 bx[row][col]意味着您将为5,7分配一个值(在此示例中)。