1.使用break结束循环
break用于完全结束一个循环,跳出循环体.
不带标签的break结束语句
public class BreakTest2{
public static void main(String[]args)
{
//一个简单的for循环
for(int i=0;i<5;i++)
{
//内层循环
for (int j=0;j<3; j++)
{
System.out.println("i的值为:"+ i +" j的值为:" +j);
if(j==1)
{
break;
}
}
}
}
}
带标签的break结束语句;
public class BreakTest2{
public static void main(String[]args)
{
//一个简单的for循环
outer:
for(int i=0;i<5;i++)
{
//内层循环
for (int j=0;j<3; j++)
{
System.out.println("i的值为:"+ i +" j的值为:" +j);
if(j==1)
{
//跳出outer标签所标识的循环
break outer;
}
}
}
}
}
没有break的运行结果
break不带标签的运行结果
break带标签的运行结果
由结果对比可知不带标签的仅仅结束了break所在的循环,外层循环依旧在执行;而带标签的break结束了标签内部的所有循环.
2.使用continue忽略本次循环剩下语句
continue只忽略本次循环剩下语句,接着开始下一次循环,并不会终止循环.
加continue
public class ContinueTest2{
public static void main(String[]args){
//外层循环
for(int i =0 ; i<5 ;i++)
{
//内层循环
for (int j=0;j<3;j++)
{
System.out.println("i的值为:"+i+"j的值为:"+j);
if(j==1)
{
//忽略outer标签所指定的循环中本次循环所剩下语句
continue ;
}
System.out.println("continue后面输出语句");
}
}
}
}
带标签的continue
public class ContinueTest2{
public static void main(String[]args){
//外层循环
outer:
for(int i =0 ; i<5 ;i++)
{
//内层循环
for (int j=0;j<3;j++)
{
System.out.println("i的值为:"+i+"j的值为:"+j);
if(j==1)
{
//忽略outer标签所指定的循环中本次循环所剩下语句
continue outer;
}
}
}
}
}
不加continue的运行结果
加continue的运行结果
带标签的continue运行结果
由结果对比可知
不带标签的continue只是将j=1时的内层循环的continue后面的语句忽略.因而输出结果中 j=1 时后面没有"continue后面输出语句".
带标签的continue则将标签内部的 j=1 后面的语句都忽略了,所以输出结果中不仅 j=1 时后面没有"continue后面输出语句".甚至 j=2时的语句都忽略了.
3.使用return结束方法.
return的功能是结束一个方法,一个方法结束,他内部的循环自然也会结束
public class ReturnTest
{
public static void main (String[]args)
{
//一个简单的for循环
for(int i=0;i<3;i++)
{
System.out.println("i的值是"+i);
if(i==1)
{
return;
}
System.out.println("return后的输出语句");
}
}
}