java-如何在一个循环中重新组合条件?

我一直在尝试循环这些,但我不明白,我必须放在哪里循环?

public static void Run(int n) {
    int l;
    int c;
    for (l = 1; l <= 2 * n - 1; l++) {
    System.out.println("\n");
    for (c = 1; c <= 2 * n - 1; c++) {

        if ((l == 1) || (l == 2 * n - 1) || (c == 1) || (c == 2 * n - 1)) {
        System.out.print('a');
        } else if ((l == 2) || (l == 2 * n - 2) || (c == 2) || (c == 2 * n - 2)) {
        System.out.print(defLettre(n, 1));
        } else if ((l == 3) || (l == 2 * n - 3) || (c == 3) || (c == 2 * n - 3)) {
        System.out.print(defLettre(n, 2));
        } else if ((l == 4) || (l == 2 * n - 4) || (c == 4) || (c == 2 * n - 4)) {
        System.out.print(defLettre(n, 3));
        } else if ((l == 5) || (l == 2 * n - 5) || (c == 5) || (c == 2 * n - 5)) {
        System.out.print(defLettre(n, 4));

        } else {
        System.out.print(" ");
        }

    }

    }

}

}

问题是,如果我必须输入,并且不了解如何使它们重新组合,则n越大.

编辑:

感谢您的回答.我想做的程序是这样的:

http://pastebin.com/dKBGjVqj(无法在此处正确粘贴).

我能够做到这一点,只是它令人困惑,因为如果n等于10,则我必须输入10 if..else.

顺便说一句,我的程序需要在1ghz的计算机上以1秒的速度运行,并且必须在8000 Ko以下.我如何看待1s以下的跑步?我想.java大小就是这个大小.

解决方法:

您应该解释您要执行的操作的逻辑,但是从代码来看,请将以下代码段放入第二个循环(伪代码)中

    if(l==c||l+c==2*n)
    {
        int value=min(l,c);
        if(value==1)print("a");
        else print(defLettre(n,value-1));
    }
上一篇:“ for”循环中的Java最佳实践.如何定义集合?


下一篇:java-继续/中断时不必要的标签