对不同的数组类型使用Arrays.deepToString

时间:2017-02-11 19:43:41

标签: java arrays multidimensional-array

我对编码很新,所以如果这是一个愚蠢的问题请原谅我。我正在尝试使用Arrays.deepToString(Object[] a)打印多维数组;唯一的问题是,当我尝试在Eclipse中执行此操作时,它会给出错误:&#34;类型数组中的方法deepToString(Object [])不适用于参数(Board)&#34; < / p>

我的代码如下所示:

import java.util.Arrays;
import java.util.Scanner;
public class Gameplay
{
    public static void main(String[] args)
    {
        Board show = new Board();
        String s = Arrays.deepToString(show.yourBoard(show));
        System.out.print(s);           
    }
}


public class Board
{  
    private char[][] gameBoard;
    private Ship[] ships;


    public Board()
    {
        gameBoard = new char[10][10];
        ships = new Ship[5];

        for(int r = 0; r < 10; r++)
            for(int c = 0; c < 10; c++)
                gameBoard[r][c] = '~';
    }


    public Board yourBoard(Board input)
    {
        return input;
    }
}

方法yourBoard(Board input)应该以某种方式修改show,但在做任何事情之前,我只想确保它正确返回。无论如何,我实际上可以将Arrays.deepToString(Object[] a)方法用于我的数组,以便它实际输出正确吗?

1 个答案:

答案 0 :(得分:0)

首先,在toString()上覆盖Board方法。 Arrays.deepToString()接收数组,因此您应该Arrays.deepToString(new Board[10])