请记住:
- 计算 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语句语法
在MATLAB 中 switch 语句的语法如下:
switch <switch_expression> case <case_expression> <statements> case <case_expression> <statements> ... ... otherwise <statements> end
详细例子
在MATLAB中建立一个脚本文件,并输入下述代码:
n = input('Enter a number: ');
switch n
case -1
disp('negative one')
case 0
disp('zero')
case 1
disp('positive one')
otherwise
disp('other value')
end
在命令提示符下,输入数字 1,输出结果为:
positive one
重复执行该代码并输入数字 3,输出结果为:
other value