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
方法。