主要内容

与关系运营商的阵列比较

Relational operators compare operands quantitatively, using operators like “less than”, “greater than”, and “not equal to.” The result of a relational comparison is a logical array indicating the locations where the relation is true.

这些是MATLAB的关系运营商®

Symbol 功能等效 描述
< 上尉

少于

<= le

小于或等于

> GT

比...更棒

> = GE

大于或等于

== 等式

等于

〜= NE

不等于

阵列比较

数字阵列

关系运算符执行element-wise comparisons between two arrays. The arrays must have compatible sizes to facilitate the operation. Arrays with compatible sizes are implicitly expanded to be the same size during execution of the calculation. In the simplest cases, the two operands are arrays of the same size, or one is a scalar. For more information, see兼容阵列大小用于基本操作

例如,如果您比较两个相同大小的矩阵,则结果是相同大小的逻辑矩阵,其中元素指示关系在何处true。

a = [2 4 6;8 10 12]
a = 2 4 6 8 10 12
b = [5 5 5;9 9 9]
B = 5 5 5 9 9 9
a 
                
ans = 1 1 0 1 0 0

同样,您可以将其中一个数组与标量进行比较。

一个>7
ans = 0 0 0 1 1 1

如果您比较1-经过-n行向量m-经过-1列向量,然后MATLAB将每个向量扩展到一个m-经过-n进行比较之前的矩阵。所得矩阵包含对向量中元素的每种组合的比较结果。

a = 1:3
a = 1 2 3
b = [2;3]
B = 2 3
A> = B
ans = 0 1 1 0 0 1

空数组

关系运算符与任何尺寸尺寸为零的数组一起工作,只要两个阵列具有兼容大小。这意味着,如果一个数组的尺寸为零,则另一个数组中相应尺寸的大小必须为1或零,并且输出中该尺寸的大小为零。

a =一个(3,0);b =一个(3,1);a == b
ans =空矩阵:3 by-0

但是,诸如表达

一个==[]

如果返回错误,如果一个不是0 x-0或1-by-1。这种行为与所有其他二进制操作员的行为一致,例如+,,,,-,,,,>,,,,<,,,,,,,,|, 等等。

要测试空数组,请使用isempty(a)

复杂数字

  • 操作员>,,,,<,,,,> =, 和<=仅在执行比较时使用操作数的实际部分。

  • 操作员==and〜=测试操作数的真实和虚构部分。

inf,,,,,,,,纳特,和未定义的元素比较

  • inf值等于其他inf值。

  • 值不等于任何其他数字值,包括其他数字值值。

  • 纳特值不等于任何其他DateTime值,包括其他纳特值。

  • 未定义的分类元素不等于任何其他分类价值,包括其他未定义元素。

逻辑语句

将关系运算符与逻辑运算符结合使用一个和b(和),A |b(或者),XOR(A,B)(XOR),以及〜a(不是),将更复杂的逻辑语句串在一起。

例如,您可以在两个数组中找到负面元素的位置。

a = [2 -1;-3 10]
a = 2 -1 -3 10
b = [0 -2;-3 -1]
B = 0 -2 -3 -1
一个<0 & B<0
ans = 0 1 1 0

有关更多示例,请参见查找符合条件的数组元素

也可以看看

|||||

Related Topics