MATLAB中的SWITCH語句用于根據不同的情況執行不同的代碼塊。它可以用來替代多個if-else語句,使代碼更加簡潔和易讀。SWITCH語句的基本用法如下:
switch expression
case caseExpression1
codeBlock1
case caseExpression2
codeBlock2
...
case caseExpressionN
codeBlockN
otherwise
codeBlockDefault
end
其中,expression是需要進行比較的表達式,caseExpression是與expression進行比較的值或表達式。當expression與某個caseExpression相等時,對應的codeBlock會被執行。如果沒有任何caseExpression與expression相等,則執行otherwise后的codeBlockDefault(可選)。
在SWITCH語句中,caseExpression可以是值、變量、表達式或者逗號分隔的多個值。例如:
switch x
case 1
disp('x is equal to 1');
case 2
disp('x is equal to 2');
case {3, 4, 5}
disp('x is equal to 3, 4 or 5');
otherwise
disp('x is not equal to any of the specified values');
end
在上述例子中,根據變量x的不同值,不同的codeBlock將會被執行。
需要注意的是,在SWITCH語句中,case和otherwise后的codeBlock可以是一行代碼或多行代碼,需要使用縮進來指示所屬的代碼塊。另外,case與otherwise語句的順序非常重要,只有第一個與expression相等的caseExpression會被執行,其他的將會被忽略。