我有一个我已经处理过的二维数组。简而言之,我正在做一个海龟项目,用户输入的指令如pen up =0和pen down = 1。当笔向下时,单个数组位置,例如3被标记为"1“。
我的程序的最后一步是打印出20/20数组。我不知道如何打印它,我需要用"X“替换"1”。print命令实际上是父程序将调用的类中的一个方法。我知道我必须使用循环。
public void printGrid() {
System.out.println...
}
发布于 2011-10-16 11:08:31
public void printGrid()
{
for(int i = 0; i < 20; i++)
{
for(int j = 0; j < 20; j++)
{
System.out.printf("%5d ", a[i][j]);
}
System.out.println();
}
}
并替换为
public void replaceGrid()
{
for (int i = 0; i < 20; i++)
{
for (int j = 0; j < 20; j++)
{
if (a[i][j] == 1)
a[i][j] = x;
}
}
}
你可以一口气完成这一切:
public void printAndReplaceGrid()
{
for(int i = 0; i < 20; i++)
{
for(int j = 0; j < 20; j++)
{
if (a[i][j] == 1)
a[i][j] = x;
System.out.printf("%5d ", a[i][j]);
}
System.out.println();
}
}
发布于 2013-01-09 16:46:45
您可以使用Utility mettod。Arrays.deeptoString();
public static void main(String[] args) {
int twoD[][] = new int[4][];
twoD[0] = new int[1];
twoD[1] = new int[2];
twoD[2] = new int[3];
twoD[3] = new int[4];
System.out.println(Arrays.deepToString(twoD));
}
发布于 2011-10-16 11:53:14
我在另一个问题中回答了类似这样的问题
public class Snippet {
public static void main(String[] args) {
int [][]lst = new int[10][10];
for (int[] arr : lst) {
System.out.println(Arrays.toString(arr));
}
}
}
https://stackoverflow.com/questions/7782080
复制相似问题