我的作业是用“+,-,|”做形状
我必须这样做:
+--+--+--+
| | | |
+--+--+--+
| | | |
+--+--+--+
| | | |
+--+--+--+
但我在输出中看到了这个:
+--+--+--+
| | | |
+--+--+--+
| | | |
+--+--+--+
| | | |
+--+--+--+
| | | |
这是我的代码:
public class Method {
void MakingShapes()
{
for (int j = 0; j <= 3; j++) {
for (int i = 0; i <=9; i++) {
if(i%3==0)
{
System.out.print("+");
}
else
{
System.out.print("-");
}
}
System.out.print("\n");
for (int i = 0; i <=9; i++) {
if(i%3==0)
{
System.out.print("|");
}
else
{
System.out.print(" ");
}
}
System.out.println("");
}
}
}
我知道我的错误在循环中但我找不到它,但它看起来像在最后一个循环中。 谢谢。
最佳答案
我认为您可以通过使用不同的方法使其更清晰:
private void verticalLine() {
for (int i = 0; i <= 9; i++) {
if (i % 3 == 0) {
System.out.print("|");
} else {
System.out.print(" ");
}
}
System.out.println("");
}
private void horizontalLine() {
for (int i = 0; i <= 9; i++) {
if (i % 3 == 0) {
System.out.print("+");
}
else {
System.out.print("-");
}
}
System.out.print("\n");
}
你的方法变成:
void MakingShapes() {
for (int j = 0; j <= 3; j++) {
horizontalLine();
verticalLine();
}
}
很明显,您只需要在循环后调用一个额外的 horizontalLine() 来关闭显示。正如@JamesC.TaylorIV 在评论中指出的那样,要获得目标输出,您还需要将循环减少到只运行三次:
void MakingShapes() {
for (int j = 0; j < 3; j++) {
horizontalLine();
verticalLine();
}
horizontalLine();
}
关于java - 在 Java 中使用 "+,-,|"绘制形状,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27845355/