Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 对不同的数组类型使用Arrays.deepToString_Java_Arrays_Multidimensional Array - Fatal编程技术网

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

Java 对不同的数组类型使用Arrays.deepToString,java,arrays,multidimensional-array,Java,Arrays,Multidimensional Array,我对编码相当陌生,所以如果这是一个愚蠢的问题,请原谅我。我正在尝试使用数组打印多维数组。deepToString(Object[]a);唯一的问题是,当我在Eclipse中尝试这样做时,它给了我一个错误:“类型数组中的方法deepToString(Object[])不适用于参数(Board)” 我的代码如下所示: import java.util.Arrays; import java.util.Scanner; public class Gameplay { public static

我对编码相当陌生,所以如果这是一个愚蠢的问题,请原谅我。我正在尝试使用
数组打印多维数组。deepToString(Object[]a)
;唯一的问题是,当我在Eclipse中尝试这样做时,它给了我一个错误:“类型数组中的方法deepToString(Object[])不适用于参数(Board)”

我的代码如下所示:

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;
    }
}
导入java.util.array;
导入java.util.Scanner;
公共类游戏
{
公共静态void main(字符串[]args)
{
线路板显示=新线路板();
字符串s=Arrays.deepToString(show.yourBoard(show));
系统输出打印;
}
}
公共班级委员会
{  
私有char[][]游戏板;
私人船舶[]艘船舶;
公共委员会()
{
gameBoard=新字符[10][10];
船舶=新船舶[5];
对于(int r=0;r<10;r++)
对于(int c=0;c<10;c++)
游戏板[r][c]='~';
}
公共板yourBoard(板输入)
{
返回输入;
}
}

方法
yourBoard(Board input)
应该以某种方式修改
show
,但在执行任何操作之前,我只想确保它正确返回。我是否真的可以将
数组.deepToString(Object[]a)
方法与我的数组一起使用,以便它能够正确输出?

首先,在
板上覆盖
toString()
方法
Arrays.deepToString()
接收数组,所以您应该执行
Arrays.deepToString(新板[10])
Board
不是数组。它包含数组。(两个不同的)您需要调用
Arrays.deepToString(gameBoard)
。我建议您覆盖
Board
上的
toString
方法。