使用break结束循环
例1:在循环体中遇到break,系统将完全结束该循环,开始执行循环之后的代码。
public class Test {
public static void main(String[] args) {
//一个简单的for循环
for(int i=0;i<10;i++)
{
System.out.println("i的值是"+i);
if(i==2)
{
//执行该语句时将结束循环
break;
}
}
}
}
输出结果:
i的值是0
i的值是1
i的值是2
例2:break语句不仅可以结束其所在的循环,还可以直接结束其外层循环。此时需要在break后紧跟一个标签,这个标签用于标识一个外层循环。
public class Test {
public static void main(String[] args) {
//外层循环,outer作为标识符
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;
}
}
}
}
}
输出结果:
i的值为:0 j的值为:0
i的值为:0 j的值为:1
使用continue忽略本次循环剩下语句
例1:continue的功能和break有点相似,区别是continue只是忽略本次循环剩下语句,接着开始下一次循环,并不会终止循环;而break则是完全终止循环本身。
public class Test {
public static void main(String[] args) {
//一个简单的for循环
for(int i=0;i<3;i++)
{
System.out.println("i的值是"+i);
if(i==1)
{
//忽略本次循环剩余的语句
continue;
}
System.out.println("continue后的输出语句");
}
}
}
输出结果:
i的值是0
continue后的输出语句
i的值是1
i的值是2
continue后的输出语句
例2:与break相似,continue后也可以紧跟一个标签,用于直接跳过标签所标识的循环的当次循环的剩下语句,重新开始下一次循环。
public class Test {
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;
}
}
}
}
}
运行结果:
i的值为:0 j的值为:0
i的值为:0 j的值为:1
i的值为:1 j的值为:0
i的值为:1 j的值为:1
i的值为:2 j的值为:0
i的值为:2 j的值为:1
i的值为:3 j的值为:0
i的值为:3 j的值为:1
i的值为:4 j的值为:0
i的值为:4 j的值为:1
使用return结束循环
1.当一个方法执行到一个return语句时,这个方法将被结束。
2.与continue和break不同的是,return直接结束整个方法,不管这个return处于多少层循环之内。