【发布时间】:2016-02-28 18:15:58
【问题描述】:
我有一个 Batlle-ship 计划项目要做。我试图弄清楚如何打印棋盘游戏(NxN)。
我使用的是这样一个嵌套的 for 循环:
for(int i=0; i<=10; i++){
for(int=j=0; j<=10; j++){
System.out.println("-");
}
System.out.println("A B C D E F G H I J");
}
要打印这样的内容:
A B C D E F G H I J
A - - - - - - - - - -
B - - - - - - - - - -
C - - - - - - - - - -
D - - - - - - - - - -
E - - - - - - - - - -
F - - - - - - - - - -
G - - - - - - - - - -
H - - - - - - - - - -
I - - - - - - - - - -
J - - - - - - - - - -
但是有一些问题,因为它没有像那样显示板。如果有人可以帮助确定这里发生了什么,我将不胜感激。
【问题讨论】:
-
尝试在 for 循环中打印“-”,而不仅仅是“-”。额外的空间将使打印出来的内容看起来像一个网格。
-
你真的应该告诉我们你得到了什么输出,否则我们不能真正帮助你。一个问题可能是
System.out.println()每次调用时都会附加一个换行符。尝试改用System.out.printf(),因为它不会在每个-之后添加换行符,然后您可以在您认为合适的地方添加换行符 -
println()表示打印文本和换行符(并将 carret 放在下一行)。这就是为什么您的代码每行打印一个符号的原因。如果您希望 carret 保持在同一行,请改用System.out.print("....")。 -
public class Tester { public static void main(String[] args){ Tester game = new Tester(); } public Tester(){ for(int i=0; i<=10; i++){ System.out.printf("A B C D E F G H I J"); for(int j=0; j<=10; j++){ System.out.println("- "); } } } }我做了一些修改,但现在它只打印了 10 个板而不是一个。这是输出(打印 10 次):A B C D E F G H I J- - - - - - - - - -
标签: java arrays multidimensional-array