黑马程序员技术交流社区
标题:
break、continue和return都有什么作用?
[打印本页]
作者:
刘源
时间:
2012-8-5 18:21
标题:
break、continue和return都有什么作用?
本帖最后由 刘源 于 2012-8-5 23:10 编辑
break、continue和return在函数中表示什么作用啊,作用范围是多大啊?
“
问题已经解决
”。
作者:
pphdsny3
时间:
2012-8-5 18:35
(1)return 是从当前的方法中退出,返回到该调用的方法的语句处,继续执行,可以返回与方法的声明中的返回值的类型一致的数值,也可以什么都不返回。
(2)break是结束本次循环,跳出本层循环体。
(3)continue是结束本次循环,提过循环体剩下的语句,继续判断下一次条件是否符合,符合则继续循环,否则跳出循环。
相关代码:
class Test
{
public static void main(String[] args)
{
testBreak();
testContinue();
testReturn();
}
static void testBreak()
{
for(int i=0;i<10;i++)
{
if(i%2==0)
{
System.out.println("i="+i);
}
else
{
System.out.println("执行了break语句,跳出当前循环!");
break;
}
}
}
static void testContinue()
{
for(int i=0;i<10;i++)
{
if(i%2==0)
{
System.out.println("没有执行continue语句输出i="+i);
}
else
{
System.out.println("执行了Continue语句,跳出当前循环!");
continue;
}
}
}
static void testReturn()
{
for(int i=0;i<10;i++)
{
System.out.println("执行了return语句,直接跳出了当前的testReturn方法!");
return;
}
}
}
复制代码
/*运行结果:
i=0
执行了break语句,跳出当前循环!
没有执行continue语句输出i=0
执行了Continue语句,跳出当前循环!
没有执行continue语句输出i=2
执行了Continue语句,跳出当前循环!
没有执行continue语句输出i=4
执行了Continue语句,跳出当前循环!
没有执行continue语句输出i=6
执行了Continue语句,跳出当前循环!
没有执行continue语句输出i=8
执行了Continue语句,跳出当前循环!
执行了return语句,直接跳出了当前的testReturn方法!
*/
作者:
官文昌
时间:
2012-8-5 18:37
第一:break语句通常用在循环语句和开关语句中,当break语句用于do-while、for、while循环语句中时,可使程序终止循环而执行循环后面的语句, 通常break语句总是与if语句联在一起,即满足条件时便跳出循环。例如:
main()
{
int i=0;
char c;
while(1) /*设置循环*/
{
c='\0'; /*变量赋初值*/
while(c!=13&&c!=27) /*键盘接收字符直到按回车或Esc键*/
{
c=getch();
printf("%c\n", c);
}
if(c==27)
break; /*判断若按Esc键则退出循环*/
i++;
printf("The No. is %d\n", i);
}
printf("The end");
}
注意:
1) break语句对if-else的条件语句不起作用。
2) 在多层循环中, 一个break语句只向外跳一层。
第二:continue语句的作用是跳过循环本中剩余的语句而强行执行下一次循环。continue语句只用在for、while、do-while等循环体中,常与if条件语句一起使用,用来加速循环。
例如:
main()
{
char c;
while(c!=13) /*不是回车符则循环*/
{
c=getch();
if(c==0X1B)
continue; /*若按Esc键不输出便进行下次循环*/
printf("%c\n", c);
}
}
其实就是continue跳过一次循环以及后面的语句,进行下次循环。
第三: return语句是将函数的值返回主调函数。例如:
int max(int a,int b)
{
if(a>b)return a;
else return b;
}
这个函数是返回a和b中的最大值;
return 语句的一般形式为:
return 表达式
或者为:
return (表达式)
作者:
王健
时间:
2012-8-5 18:41
break 跳出当前循环体。
continue 跳出循环体中的当次循环,进入下一次循环。
return终止程序向前,并可返回一个值。
作者:
焦晨光
时间:
2012-8-5 18:44
这方面的知识我昨天晚上刚总结过
break:用于完全结束一个循环跳出循环体。不管是哪种循环,一旦在循环体中遇到break
系统将完全结束该循环,开始执行循环之后的代码。
continue:continue的功能和break有点类似,区别是continue只是终止本次循环,接着开始
下次循环,而break是完全终止循环本身。可以理解为continue的作用是跳过当次循环中
剩下的语句,重新开始一次新的循环。
return:return关键字不是专门用于结束循环的,return的功能是结束一个方法,当一个方法执行到
return语句时,这个方法将被结束。java程序中的大部分循环都被放在方法中执行,一旦在
循环体内执行到一个return语句,return语句就会结束该方法,循环自然也随之结束。
总结:
break:彻底跳出循环
continue:不跳出循环,重新开始下一次循环
return:不仅彻底跳出循环,整个方法也被结束
作者:
曹晓涵
时间:
2012-8-5 18:55
break语句有3种作用:第一,你已经看到,在switch语句中,它被用来终止一个语句序列。第二,它能被用来退出一个循环。第三,它能作为一种“先进”的goto 语句来使用。
continue 语句是break语句的补充。在while 和do while 循环中,continue 语句使控制直接转移给控制循环的条件表达式,然后继续循环过程。在for 循环中,循环的反复表达式被求值,然后执行条件表达式,循环继续执行。对于这3种循环,任何中间的代码将被跳过。
return语句用来明确地从一个方法返回。也就是,return 语句使程序控制返回到调用它的方法。因此,将它分类为跳转语句。在一个方法的任何时间,return 语句可被用来使正在执行的分支程序返回到调用它的方法。
可以参看这篇文章比较详细http://long-yu2.iteye.com/blog/1530310
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2