• MATLAB关系运算符

    关系运算符是指两数值或字符操作数之间的运算符,这种运算将根椐两操作数的关系产生结果 true 或 false。

    MATLAB 中的关系运算符有 6 个,如下表所示:

    MATLAB 关系运算符
    关系运算符 描述
    < 小于
    <= 小于或等于
    > 大于
    >= 大于或等于
    == 等于(请不要和赋值等号 = 混淆)
    ~= 不等于

    关系运算符可以用来对两个数值、两个数组、两个矩阵或两个字符串等数据类型进行比较,同样也可以进行不同类型的两个数据之间的比较。比较的方式根据所比较的两个数据类型的不同而不同。

    值得注意的是,关系运算符可以针对两个相同维度的矩阵的对应元素进行比较,结果返回另一个同样维度的矩阵;也可以针对一个标量和一个矩阵进行运算,这种情况下是将这个标量与另一个矩阵的每个元素进行运算。

    关系运算符通过比较对应的元素,产生一个仅包含 1 和 0 的数值或矩阵。返回值是 1 表示比较结果是真,返回值是 0 表示比较结果是假。

    关系运算的基本形式如下:

    a1 op a2

    其中 a1 和 a2 是算术表达式、变量或字符串,op 代表关系运算符。如果两者的关系为真(true)时,那么这个运算将会返回 1 值,否则将会返回 0 值。

    下面是一些关系运算和它的运算结果:

    运算    结果
    3 < 4    1
    3 <= 4    1
    3 == 4    0
    3 > 4    0
    4 <= 4    1
    'A' < 'B'   1

    最后一个运算得到的结果为 1,是因为字符之间的求值要按照 ASCII 表中的顺序。

    【示例】用逻辑运算符来比较两个矩阵:

    >> A=reshape(1:9,3,3),B=magic(3)
    A =
        1     4     7
        2     5     8
        3     6     9
    
    B =
        8     1     6
        3     5     7
        4     9     2
    
    >> A>B
    ans =
        3×3 logical 数组
        0   1   1
        0   0   1
        0   0   1
    
    >> A==B
    ans =
        3×3 logical 数组
        0   0   0
        0   1   0
        0   0   0

    == 和 =

    注意,不要混淆了等于===

    • == 是逻辑运算符,用来比较两个值是否相等;
    • = 是赋值运算符,用来把一个值赋给一个变量。

    在运算的层次中,关系运算在所有数学运算之后进行。所以下面两个表达式是等价的,均产生结果 1:

    7 + 3 < 2+ 11
    (7 + 3) < (2 + 11)

更多...

加载中...