无法使我的循环输出正确格式化

时间:2016-10-12 15:56:10

标签: java format

我让循环以垂直顺序打印整数1-7。 所以喜欢

1
2
3
4
5
6
7

那部分工作正常。如果整数可以被3整除,我现在还需要它在它旁边打印。我的代码如下

for (int n = 1; n < 8; n++){
        System.out.println(n );
        if (n % 3 == 0){
            System.out.print("divides evenly into 3");
        }
    }

现在我的输出看起来像

1
2
3
divides evenly into 34
5
6
divides evenly into 37

我需要将divides均匀分配到与3和6相同的行。不是后面的行。任何人都有任何关于我在我的代码中写错了什么的见解? 我正在使用Java。

2 个答案:

答案 0 :(得分:4)

只需添加else条件:

for (int n = 1; n < 8; n++) {
    if (n % 3 == 0) {
        System.out.println(n + " divides evenly into 3");
    }
    else {
        System.out.println(n);
    }
}

答案 1 :(得分:2)

蒂姆的答案很好;这是一个轻微的变化,避免重复打印n

for (int n = 1; n < 8; n++) {
    // Using print instead of println doesn't insert the newline.
    System.out.print(n);
    if (n % 3 == 0) {
        System.out.print(" divides evenly into 3");
    }
    // When there's nothing more to print on the line, now add the
    // newline.
    System.out.println();
}