主要内容

转变情况下否则

执行几组语句中的一个

语法

转变switch_expression.情况下case_expression陈述情况下case_expression陈述...否则陈述结束

描述

例子

转变switch_expression., 案件case_expression,最后计算表达式并选择执行几组语句中的一组。每一个选择都是一个案例。

转变块测试每个case,直到其中一个case表达式为真。case在以下情况下为真:

  • 对数字的,case_expression==.switch_expression.

  • 对于字符向量,比较字符串(case_expressionswitch_expression.) = = 1

  • 的对象金宝app情商函数,case_expression==.switch_expression..重载函数的输出情商函数必须是逻辑值或可转换为逻辑值。

  • 对于单元格数组case_expression,则单元格数组中至少有一个元素匹配switch_expression.,如上定义的数字、字符向量和对象。

当一个case表达式为真时,MATLAB®执行相应的语句并退出转变块。

一个评估switch_expression.必须是标量或字符向量。一个评估case_expression必须是标量、字符向量或标量或字符向量的单元格数组。

否则块是可选的。MATLAB只在case不为真时执行语句。

例子

全部折叠

根据在命令提示符处输入的值,有条件地显示不同的文本。

n =输入(“输入一个数字:”);转变n情况下-1 disp(“- 1”情况下0 disp('零'情况下1 disp (“积极”否则disp ('其他价值'结束

在命令提示符处,输入数字1。

积极的一个

重复密码并输入数字3。

其他值

的值决定要创建哪种类型的绘图plottype.如果plottype要么是“馅饼”要么'pie3',创建一个3d饼图。使用单元格数组来包含这两个值。

x = [12 64 24];plottype ='pie3'转变plottype情况下“酒吧”酒吧(x)标题(“条形图”情况下“馅饼”'pie3'} pie3 (x)标题(“饼图”否则警告(出人意料的情节类型。没有阴谋。”结束

提示

  • 一个case_expression不能包含关系操作符,例如<要么>为了与switch_expression..为了检验不平等,请使用elseif,如果别的语句。

  • MATLAB转变语句不像C语言那样可以通过转变声明。如果第一个情况下语句是真的,Matlab没有执行另一个情况下语句。例如:

    结果= 52;转变(结果)情况下52 disp (“结果是52”情况下{52,78} DISP('结果是52或78'结束
    结果是52
  • 在特定情况下定义代码所需的所有变量。因为MATLAB只执行任意一种情况转变语句中,在一种情况下定义的变量不能用于其他情况。例如,如果当前工作区不包含变量x,只有定义x可以使用它:

    转变选择情况下1 x = -pi:0.01:pi;情况下2%对x一无所知结束
  • MATLAB打破语句结束a的执行要么循环,但不结束执行a转变声明。这种行为不同于打破转变在C。

扩展功能

另请参阅

|||

在R2006A之前介绍