我试图做一个简单的语句用Matlab如下:条件if/else语句
if TF==1
disp('One'), break
else continue
end
... ... ...
... ... ...
但即使TF不为1,当我运行该命令时,它不会继续脚本的其余部分!任何帮助将不胜感激 - 谢谢
我试图做一个简单的语句用Matlab如下:条件if/else语句
if TF==1
disp('One'), break
else continue
end
... ... ...
... ... ...
但即使TF不为1,当我运行该命令时,它不会继续脚本的其余部分!任何帮助将不胜感激 - 谢谢
该continue
声明有一个非常不同的含义。在循环内,如for
或while
循环,continue
指示跳过当前循环,继续循环中的下一次迭代。所以如果你删除continue
,你会看到你期待的行为。下面是一个例子:
for k = 1 : 10
if k == 4
% skip the calculation in the case where k is 4
continue
end
area = k * k;
disp(area);
end
当k == 4
循环迭代,块计算相应方的区域被跳过。这个特殊的例子不是很实际。
但是,想象一下你有一个十个文件名的列表,并且你想在这个循环中处理每个文件“for k = 1 : 10
”。您将不得不尝试打开每个文件,但如果您发现该文件不存在,则处理该文件的适当方法是打印一些警告,然后将continue
添加到下一个文件。
和'break'也打算在循环中使用:它完全退出循环。 – catchmeifyoutry
非常感谢,我误解了'继续' – ToNoY
不需要那个'else continue',只需删除那一行。 – us2012
这是'如果'内循环? continue语句实际上会放弃当前的迭代并开始新的迭代。它不会在代码行出现之后继续执行。Break将退出循环。 –