Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/377.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用IF执行while循环_Java_Loops_Conditional Statements - Fatal编程技术网

Java 使用IF执行while循环

Java 使用IF执行while循环,java,loops,conditional-statements,Java,Loops,Conditional Statements,我将if条件语句与do while循环一起使用。我希望每次编译器运行程序时,它都应该在IF中打印语句,直到它小于15。现在发生的事情是,在do-while循环中,工作进行得非常顺利,但是IF中的语句只打印一次?我哪里做错了。如果有人解释这个流程,我会非常感激,因为我是一个初学者。请参阅下面的代码: package loopexamples2; public class DoWhileLoop { public static void main(String[] args) { int

我将if条件语句与do while循环一起使用。我希望每次编译器运行程序时,它都应该在IF中打印语句,直到它小于15。现在发生的事情是,在do-while循环中,工作进行得非常顺利,但是IF中的语句只打印一次?我哪里做错了。如果有人解释这个流程,我会非常感激,因为我是一个初学者。请参阅下面的代码:

package loopexamples2;

public class DoWhileLoop {

public static void main(String[] args) {
    int n = 1;
    if(n<15)

        System.out.println("print value of n is equal to"+ n);

    do {
     System.out.println(n);
     n++;
    }
     while(n<10);           
    }
}
输出->n的打印值等于1 1. 2. 3. 4. 5. 6. 7. 8.
9

if语句在do-while循环之外。把它放在do{}块中

package loopexamples2;

public class DoWhileLoop {

public static void main(String[] args) {
    int n = 1;

    do {
     if(n<15) {
        System.out.println("print value of n is equal to"+ n);
     }
     System.out.println(n);
     n++;
    }
     while(n<10);           
    }
}

if语句在do-while循环之外。把它放在do{}块中

package loopexamples2;

public class DoWhileLoop {

public static void main(String[] args) {
    int n = 1;

    do {
     if(n<15) {
        System.out.println("print value of n is equal to"+ n);
     }
     System.out.println(n);
     n++;
    }
     while(n<10);           
    }
}

您正在寻找与此更接近的内容:

while(n<15) {
    System.out.println("print value of n is equal to"+ n);
    n++
}
{和}内的代码块将持续运行,直到n达到大于或等于15的值


对于您当前的代码,完整的print语句只输出一次,因为它不包括在while循环中。

您正在寻找与此更接近的内容:

while(n<15) {
    System.out.println("print value of n is equal to"+ n);
    n++
}
{和}内的代码块将持续运行,直到n达到大于或等于15的值


对于当前代码,完整的print语句只输出一次,因为它不包括在while循环中。

我想这就是您想要的:

package loopexamples2;

public class DoWhileLoop {

    public static void main(String[] args) {
        int n = 1;        
        do {
           System.out.println("print value of n is equal to"+ n);
           n++;
        } while(n<10);           
    }
}
代码流:

int n=1;将n赋值给1

从这里直到while,在大括号之间重复代码

System.out.PrintLn n的打印值等于+n;n的打印值等于1

n++;将n增加1,因此n=2


}我想这就是你想要的:

package loopexamples2;

public class DoWhileLoop {

    public static void main(String[] args) {
        int n = 1;        
        do {
           System.out.println("print value of n is equal to"+ n);
           n++;
        } while(n<10);           
    }
}
代码流:

int n=1;将n赋值给1

从这里直到while,在大括号之间重复代码

System.out.PrintLn n的打印值等于+n;n的打印值等于1

n++;将n增加1,因此n=2


}而IF中的语句只传递一次。因为它不在任何循环内


程序的流程是程序化的。所以执行是从上到下的。它首先传递IF块,执行它,继续到下一行,找到dowhile块,该块是循环的,直到满足while条件为止。循环只在它的块上迭代,而不在它前面的行上迭代。

IF中的语句只传递一次。因为它不在任何循环内


程序的流程是程序化的。所以执行是从上到下的。它首先传递IF块,执行它,继续到下一行,找到dowhile块,该块是循环的,直到满足while条件为止。循环只在其块上迭代,而不在其前面的行上迭代。

我解释了工作流,因为您是初学者:

    int n = 1;
1被分配给n

程序检查n是否小于15。情况确实如此,因此它执行以下操作:打印值n等于+n。它只做一次。重复执行循环的不是while或for循环

    do {
     System.out.println(n);
     n++;
    }
     while(n<10);           
    }
在这里,程序执行{和}之间的所有操作,直到n=10

你是说它应该在IF中打印声明,直到少于15

然后您需要一个类似的do/while循环:

 do {
     System.out.println("print value of n is equal to"+ n);
     n++
 }
 while (n<15);

由于您是初学者,我将解释工作流程:

    int n = 1;
1被分配给n

程序检查n是否小于15。情况确实如此,因此它执行以下操作:打印值n等于+n。它只做一次。重复执行循环的不是while或for循环

    do {
     System.out.println(n);
     n++;
    }
     while(n<10);           
    }
在这里,程序执行{和}之间的所有操作,直到n=10

你是说它应该在IF中打印声明,直到少于15

然后您需要一个类似的do/while循环:

 do {
     System.out.println("print value of n is equal to"+ n);
     n++
 }
 while (n<15);
我希望每次编译器运行程序时,它都应该在IF中打印语句,直到它小于15

因为您使用的是n,所以我希望每次编译器运行程序时,它都应该在IF中打印语句,直到小于15为止


由于首先要使用n,因此需要将if语句放在do while循环中。否则程序只会看到if一次

接下来你要做的是在你的声明中:

do {
    System.out.println(n);
n++;
}
while(n<10);

因此,您的代码将如下所示:

package loopexamples2;

public class DoWhileLoop {

public static void main(String[] args) {
    int n = 1;

    do {
        if(n <= 15){
            System.out.println("The value of n is equal to " + n);
            n++;
    } while(n <= 15);
}
}

注意首先,您需要将if语句放在do while循环中。否则程序只会看到if一次

接下来你要做的是在你的声明中:

do {
    System.out.println(n);
n++;
}
while(n<10);

因此,您的代码将如下所示:

package loopexamples2;

public class DoWhileLoop {

public static void main(String[] args) {
    int n = 1;

    do {
        if(n <= 15){
            System.out.println("The value of n is equal to " + n);
            n++;
    } while(n <= 15);
}
}

注意您可以随时参考此内容。。。 这将对你更有帮助


你可以在任何时候参考这个。。。 这将对你更有帮助


Offtopic:编译器不运行该程序。它编译它。@m0skit0-你完全正确。但是,如果你想痛苦地迂腐,你可以争辩说编译器运行常量表达式,以便将它们的值放入.class文件中。当然,我决不会提出这样愚蠢的解释:-谢谢你的纠正,我本来可以更现实一些的
aying编译器编译程序,JVM运行它。主题:编译器不运行程序。它编译它。@m0skit0-你完全正确。但是,如果你想痛苦地迂腐,你可以争辩说编译器运行常量表达式,以便将它们的值放入.class文件中。当然,我决不会提出这样一个愚蠢的解释:-谢谢你的纠正,我本来可以更现实地说编译器编译程序,JVM运行它,谢谢,但我已经做了“While”循环标准,显然是在用if做一个强有力的例子。实际上,使用while是非常直接和更好的方法谢谢,但是我已经做了while循环标准,显然是在用if做一个有力的例子。实际上,使用while是一种非常直截了当、更好的方法。当然,在headfirst之后,它是下一个“headshot”!当然,在头一个之后,它是下一个“头像”!