目录
for循环
while循环
do...while循环
do...while 循环与for循环,while循环的区别:
for循环与while循环的区别:
首先,我们的循环语句的操作流程都是: 判断 -> 循环 -> 控制
for循环
格式:for(初始化语句;条件判断语句;条件控制语句)
{ 循环体语句 }
执行流程:1.执行初始化语句;
2、执行条件判断语句;(如果为true则继续执行,为false就结束循环)
3、执行循环体语句;
4、执行条件控制语句;
5、回到第二步继续循环;
只通过字面意思可能不太好理解,我们通过简单地代码来进行学习:
public class Max {
public static void main(String args[]) {
for(int i=0;i<5;i++) {
System.out.println(i);
}
System.out.println("执行for循环之外的代码了");
}
}
下面是控制台的输出结果:
for循环是一种很常用的语句,就比方说,我们要打印100遍“程序猿”,我们可以使用输出语句输出100遍,也就是System.out.println("程序猿");把这一串代码写上一百遍,这样太麻烦了,我们学了for循环之后,可以用以下代码来进行同样的输出:
public class A {
public static void main(String args[]) {
for(int i=0;i<100;i++) {
System.out.println("程序猿");
}
}
}
这样也会在控制台输出100次程序猿,比写一百次输出语句方便得多。
while循环
格式:while(条件判断语句)
{ 循环体语句; 条件控制语句; }
执行流程:1、执行初始化语句;
2、执行条件判断语句;为true则继续执行,为false就结束循环
3、执行循环体语句;
4、执行条件控制语句;
5、返回第二步继续执行;
下面我们看代码:
public class Max {
public static void main(String args[]) {
int i=0; //这是初始化语句
while(i<5) //先进行判断,i=0,i<5,满足条件所以进入while循环
{
System.out.println(i); //把i的值打印在控制台上
i++; //然后把i的值进行+1操作
//然后i变成1继续进行i<5的判断,1<5,所以可以继续执行循环体的内容
//这样循环了5次之后i的值变成了5,不满足i<5了,所以不再执行循环体的内容了
}
System.out.println("这是循环体之外的语句");
}
}
以下是控制台输出结果:
其实while循环和for循环差不多,不过while循环构造死循环更加的方便,当我们把条件判断语句改为true时,就会陷入死循环了,看下面的代码:
public class Max {
public static void main(String args[]) {
int i=0; //这是初始化语句
while(true) //这里不用进行判断了,判断语句永远为true
{
System.out.println(i); //把i的值打印在控制台上
i++; //然后把i的值进行+1操作
//就这么一直循环下去
}
//System.out.println("这是循环体之外的语句");
}
}
控制台会输出递增的数,陷入死循环。
do...while循环
格式:do{ 循环体语句; 条件控制语句 ;}
while(条件判断语句);
执行流程:1、执行初始化语句;
2、执行循环体语句;
3、执行条件控制语句;
4、执行条件判断语句;
5、返回第二步继续循环执行;
下面我们来看代码:
public class Max {
public static void main(String args[]) {
int i=0;
do
{
System.out.println(i);
i++;
//先执行一遍打印i的操作,在把i进行+1的操作
}
while(i<5);
//然后再判断一下i的值是否小于5,如果小于则继续执行,大于则退出循环
System.out.println("执行循环体外的语句");
}
}
下面是控制台的输出结果:
do...while 循环与for循环,while循环的区别:
for循环,while循环都是先判断条件是否成立,然后执行循环体语句
do...while循环先执行一次循环体,在判断条件是否成立,是否继续执行循环体
我们看代码
public class Max {
public static void main(String args[]) {
int i=0;
do
{
System.out.println(i);
i++;
//先执行一遍打印i的操作,在把i进行+1的操作
}
while(i>5);
//这里判断的i是大于5的,所以会退出循环,
//但是上面的语句块已经执行了,所以控制台会输出i的值
System.out.println("执行循环体外的语句");
System.out.println(i);
//因为在循环体已经执行了一次i++操作,所以输出的i的值为1
}
}
控制台输出为:
这样看,在我们使用do...while循环体时,即使一开始我们的条件判断语句就是错误的,循环体里面的语句也会先执行一次。
for循环与while循环的区别:
在for循环中,我们所控制的自增变量 i 因为属于for循环,所以在for循环结束之后 ,就不会再被访问到了。
也就是for(int i=0;i<5;i++)这个i只属于for循环,我们只能在for循环中使用这个i,在for循环之外使用会报错。例如:在for循环之外使用System.out.println(i);就会报错。而且我们这里已经定义了一个局部变量名为 i 了,即使在for循环之外我们也不能再定义局部变量名为 i 的了,这样也会重名。
在while循环中就不会出现这种情况,因为我们定义 i 是在循环外面定义好了的,所以即使不在循环体内,我们也可以使用这个 i 。
好了,以上就是本篇所有内容了,感谢观看。
暑期编程PK赛 得CSDN机械键盘等精美礼品!


