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

问题描述 投票:-2回答:1

我试图从文件中读取内容并将其放入对象类型框的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
               }
        }

}
java multidimensional-array type-conversion
1个回答
1
投票

是的错误是预期的。在bx[row][col] = lineReader.next();中,您尝试读取一个值。 Scanner#next()默认返回一个String,但你试图将它存储为Box类型的数组。

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

© www.soinside.com 2019 - 2024. All rights reserved.