Java 我们可以使用'&&';for中的逻辑运算符?

Java 我们可以使用'&&';for中的逻辑运算符?,java,for-loop,Java,For Loop,假设我们希望在输出中看到该形状: 1 22 333 4444 666666 7777777 88888888 代码: 公共类主{ 公共静态void main(字符串[]args){ 对于((inti=1;i有一种更简单的方法来做你想做的事情 public static void main(String[] args) { for(int i = 1; i < 9; i++){ if(i != 5) { for(int j=1; j<

假设我们希望在输出中看到该形状:

1
22
333
4444
666666
7777777
88888888
代码:

公共类主{
公共静态void main(字符串[]args){

对于((inti=1;i有一种更简单的方法来做你想做的事情

public static void main(String[] args) {

    for(int i = 1; i < 9; i++){
        if(i != 5) {
            for(int j=1; j<=i; j++){
                System.out.println(i);
                System.out.println();
            }
        }
    }
}
publicstaticvoidmain(字符串[]args){
对于(int i=1;i<9;i++){
如果(i!=5){

对于(int j=1;j简短回答,否-您不能使用布尔
&&
运算符嵌套循环。但是,您可以使用lambdas来实现这一点

IntStream.range(1, 8) // 1, 2, 3, 4, 5, 6, 7, 8
    .filter(i -> i != 5) // remove 5
    .forEachOrdered(i -> System.out.println(IntStream.range(0, i)
            .mapToObj(j -> String.valueOf(i)) // repeat i i times
                .collect(Collectors.joining())));

此语法无效。仅使用嵌套的
if
语句有什么错?哦,实际上这是我们考试中的一个问题。我们被禁止使用if语句:(那么这将是一个愚蠢的考试:/(为什么它会鼓励您不编写最明显/清晰的代码?)啊哈哈哈,我想原因是要检查我们是否知道如何使用“for语句”。你不能把它放在循环条件中,否则它会结束循环。你可以把它放在increment语句中(
I=(I==4?6:I+1)
),但这样混淆你的代码是没有道理的。
public static void main(String[] args) {

    for(int i = 1; i < 9; i++){
        if(i != 5) {
            for(int j=1; j<=i; j++){
                System.out.println(i);
                System.out.println();
            }
        }
    }
}
public static void main(String[] args) {

    for(int i = 1; i < 5; i++){
        for(int j=1; j<=i; j++){
            System.out.println(i);
            System.out.println();
        }
    }
    for(int i = 6; i < 9; i++){
        for(int j=1; j<=i; j++){
            System.out.println(i);
            System.out.println();
        }
    }
}
IntStream.range(1, 8) // 1, 2, 3, 4, 5, 6, 7, 8
    .filter(i -> i != 5) // remove 5
    .forEachOrdered(i -> System.out.println(IntStream.range(0, i)
            .mapToObj(j -> String.valueOf(i)) // repeat i i times
                .collect(Collectors.joining())));