问1: break如何使用?跳出的是if循环 还是 for循环?
问2: 如果是多层嵌套循环,break又会跳出哪一层循环呢? 比如有代码中有多个if循环,if循环外又有多个for循环,break跳出到哪里?
先说答案:break是用来结束 for循环 或 while循环的,对于嵌套循环,break只结束本层循环。
下面依次举例说明:
例1:
for i = 1:10
if i==5
break; %当i=5时,跳出for循环
end
disp(i);
end
输出结果: 1 2 3 4
由此,可以得出问1的答案,break是直接跳出for循环。那如果是多层循环呢,break会跳出至哪里?
例2:
for i = 1:10
if i>3
if i==5
break;
end
disp(i);
end
end
输出结果:4
这说明,不论for循环下面有多少个if循环,break还是直接跳出for循环。
对于有多个for循环的嵌套循环,break会跳出哪一层呢?
例3:
for j = 1:3
for i= 1:4
if i==3
break;
end
disp(i);
end
end
输出结果:1 2 1 2 1 2
发现,break面对多个for循环,只向外跳一层。