switch 块有条件地执行一组语句从几个选择。每个选项所涵盖的一个 case 语句。
计算 switch_expression 是一个标量或字符串。
计算case_expression是标量,标量或字符串的字符串或单元阵列。
switch 块测试每个 case ,直到其中一个 case 是 true 。case 是 true 当:
对于数字, eq(case_expression,switch_expression).
对于字符串, strcmp(case_expression,switch_expression).
对于对象,支持 eq 函数, eq(case_expression,switch_expression).
对于单元阵列case_expression的,在单元阵列与switch_expression相匹配的元素中的至少一个,如上文所定义的数字,字符串和对象。
当一个情况是true,MATLAB 执行相应的语句,然后退出switch块。
otherwise 块是可选的,任何情况下,只有当真正执行。
语法
在MATLAB 中 switch 语句的语法是:
switch <switch_expression>
case <case_expression>
<statements>
case <case_expression>
<statements>
...
...
otherwise
<statements>
end
例子
创建一个脚本文件,并键入下面的代码:
grade = 'B';
switch(grade)
case 'A'
fprintf('Excellent!' );
case 'B'
fprintf('Well done' );
case 'C'
fprintf('Well done' );
case 'D'
fprintf('You passed' );
case 'F'
fprintf('Better try again' );
otherwise
fprintf('Invalid grade' );
end
当您运行该文件时,它会显示:
Well doneYour grade is B