黑马程序员技术交流社区

标题: for语句,while,do while语句有什么区别? [打印本页]

作者: 梁秋瑜    时间: 2013-5-28 23:46
标题: for语句,while,do while语句有什么区别?
for语句,while,do  while语句有什么区别?
作者: FantasticPie    时间: 2013-5-28 23:52
循环的次数是我们知道的时候,我们一般会用for循环。而我们不知道循环多少次的时候,只是达到某个条件就退出循环的时候我们就使用while语句,while循环的内容有可能执行一次。do-while和while一样,但是不同的是它的do语句中的代码至少会执行一次。
作者: 张雪萍    时间: 2013-5-28 23:52
for语句的格式为:
for (初始化语句; 条件语句; 控制语句)
{ 语句1 ; 语句2 ;
.... 语句n ;
}

for 语句的执行顺序是:首先执行“初始化语句”;然后测试“条件语句”;若条件成立,则执行语句1到语句n;然后执行“控制”语句;接着再测试条件语句是否成立,如果成立则重复执行以上过程,直至条件不成立时才结束for循环。如:

for(i=0;i<10;i++)......;

int i,a[]=new int[10];
for (i=0,i<10;i++) a[i]= 0;

这段代码把整型数组a中的所有元素都赋成0。
你可以在for循环的头部说明你的变量,而且最后一个表达式可以省略,不过要确定在语句中对变量的值有所改变,如:

for(int i=0;i<=10;) i+=i;

for循环中,“初始化语句”、“条件语句”和“控制语句”都可以省略,但是其间的分号不能省略。例如:
int i =0 ;
for (; ; ;)
{
if i>10 break ;
i = i +1 ;
}

for循环中省略“条件语句”时,在for语句{}中必须包换转句语句控制程序在某个条件满足时跳出for循环,否则将形成死循环

2:while循环

while循环和for循环类似,其格式为:
while (条件语句)
{
语句1 ;
语句2 ;
....

语句n ;
}

执行while时,先测试“条件语句”,如果条件成立,则执行语句1到语句n,直至条件不成立时调处循环。
int i=0 ;
while (i<10)
{
i++ ;
System.out.println("Hey!.get me out of here!:);
}

3:do ... while 循环
do ... while 循环语句的格式为:
do
{
语句1 ;
语句2 ;
....

语句n ;
}
while (条件语句) ;

do ...while 语句的功能是首先执行语句1到语句n,然后进行条件测试,如果条件成立,则继续执行语句1到语句n,否这跳出循环。如:
boolean test=false;
do
{
......

}
while(test);
作者: 刘勇强    时间: 2013-5-28 23:54
lz可以用左上角的搜索引擎也搜一下 一般都能找到答案


while是先判断条件,如何符合再执行{}中的语句,而do{}while();是先执行一次,然后再判断条件
for和 两个while语句的区别在于 语句中变量的作用域 或存在时间

for语句中的变量在执行完后就消失,而如果循环中的变量需要在循环结束后继续使用,就用两个while语句.

w.png (11.92 KB, 下载次数: 0)

sousuo

sousuo

作者: 赵然    时间: 2013-5-29 02:09
for和while这两个循环语句是先判断,再循环(如果符合条件了)。do{}while是先执行“一次”循环中的代码,再判断,符合条件了继续循环,不符合了就不循环了。简单来说就是判断先后的差别。
作者: 袁梦希    时间: 2013-5-29 07:51
FantasticPie 发表于 2013-5-28 23:52
循环的次数是我们知道的时候,我们一般会用for循环。而我们不知道循环多少次的时候,只是达到某个条件就退 ...

我考  敢不敢突破40
作者: HM张博文    时间: 2013-5-29 09:07
袁梦希 发表于 2013-5-29 07:51
我考  敢不敢突破40

这个帖子不会突破40的
作者: 殇_心。    时间: 2013-5-29 16:49
如果问题已解决,请及时修改分类,否则继续提问,谢谢合作!




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2