0

空白行を出力し、次に 90 = 新しい行に署名し、最後に空白行を出力するメソッドを作成しようとしています。

これは私のコードです...

public void easyToRead(){
    for (int i=0; i<=EQUAL_SIGNS; i++){
        if (i >= 0){
            if (i == EQUAL_SIGNS || i == 0){
                System.out.println(" ");
            }
            else {
                System.out.print("=");
            }
        }
    }
}

出力は次のようになります...

blah blah blah

======================= ---> 90 of them

blah blah blah

誰かが私のコードを修正するのを手伝ってくれませんか。

4

3 に答える 3

3

ループで正しい軌道に乗っていると思いますが、実際にはステートメントforは必要ありません。ifこのようなものはもっと簡単かもしれません...

public void easyToRead() {
    // Write a blank line
    System.out.println();

    // Write the 90 equals characters
    for (int i=0; i<90; i++){
        System.out.print("=");
    }

    // Write a new-line character to end the 'equals' line
    System.out.println();

    // Write a blank line
    System.out.println();
}

どちらが出力されますか...

<blank line>
===========================...
<blank line>
// the next output will write on this line

必要な空白行ごとに、別のSystem.out.println();ステートメントを追加するだけです

于 2012-05-16T13:40:31.833 に答える
2
System.out.println(String.format("%n%90s%n"," ").replaceAll(" ", "="));
于 2012-05-16T13:40:08.993 に答える
0

必要な数の等号を使用したいとします。

クラスで、静的ブロックを作成します

public static String LINE_EQUAL_SIGNS;

public static String LINE_SEPARATOR = System.getProperty("line.separator").toString();

static {

    StringBuffer sb = new StringBuffer(LINE_SEPARATOR);
    for (int i = 0; i < EQUAL_SIGNS; i++)
        sb.add("=");
    sb.add(LINE_SEPARATOR);
    LINE_EQUAL_SIGNS = sb.toString();
}

これで、次のことを行うだけです。

public void easyToRead()
{
    System.out.print(LINE_EQUAL_SIGNS);
}
于 2012-05-16T13:44:37.597 に答える