1.关系运算符用来比较两个数之间的大小关系,在Matlab中的关系运算符包括:
- < 小于
- <= 小于或等于
- > 大于
- >= 大于或等于
- == 等于
- ~= 不等于
A = [1 2 3 ; 4 5 6 ; 7 8 9];
B = [11 12 13 ; 14 15 16 ; 17 18 19];
C = A == B
2.基本逻辑运算符为:&(与), ︱(或), ~(非)。
逻辑运算的规则如下:
参与逻辑运算的是两个同维数矩阵;或者一个是矩阵,另一个是标量;
若参与运算的是两个矩阵,逻辑运算是将两个矩阵对应元素逐一进行逻辑运算,逻辑运算的结果是一个同维数矩阵,其元素值为“0”或“1” 。
若参与运算的一个是矩阵,另一个是标量,则是矩阵中每个元素与该标量进行逻辑运算,最终产生一个同维数矩阵,其元素值为“0”或“1”
3.算数运算符
运算符 | 运算法则 | 运算符 | 运算法则 |
---|---|---|---|
A+B | A与B相加 | A-B | A与B相减 |
A*B | A与B相乘 | A.*B | A与B相应元素相乘(A、B为同纬度的矩阵) |
A/B | A与B相除(A、B为数值或矩阵) | A./B | A与B相应元素相除(A、B为同纬度的矩阵) |
A^B | A的B次幂(A、B为数值或矩阵) | A.^B | A的每个元素的B次幂(A、B为同纬度的矩阵) |
4. 运算符的优先级
算数运算符 > 关系运算符 > 逻辑运算符
------------------------------------------------
MATLAB语言运算符
编程语言运算符主要为算术运算符、关系运算符和逻辑运算符,还包括一些特殊运算符。下面介绍MATLAB语言的各种运算符。
1.算术运算符
MATLAB算术运算符分为两类:矩阵运算和数组运算。矩阵运算是按线性代数的规则进行运算,而数运算是数组对应元素间的运算。算术运算符及相关运算方式、说明见下表:
运算符 |
运算方式 |
说明 |
运算符 |
运算方式 |
说明 |
+,- |
矩阵运算 |
加、减 |
+,- |
数组运算 |
加、减 |
*,/ |
矩阵运算 |
乘、除 |
.* |
数组运算 |
数组乘 |
|
矩阵运算 |
左除,左边为除数 |
./ |
数组运算 |
数组左除 |
^ |
矩阵运算 |
乘方 |
. |
数组运算 |
数组右除 |
’ |
矩阵运算 |
转置 |
.^ |
数组运算 |
数组乘方 |
: |
矩阵运算 |
索引,用于增量操作 |
.’ |
数组运算 |
数组转置 |
MATLAB数组的算术运算,是两个同维数组对应元素之间的运算。一个标量与数组的运算,是标量与数组每个元素之间的运算。
2.关系运算
关系运算用于比较两个同维数组或同维向量的对应元素,结果为一个同维的逻辑数组。关系运算符及说明见下表:
关系运算符 |
说明 |
< |
小于 |
<= |
小于等于 |
> |
大于 |
>= |
大于等于 |
== |
等于 |
~= |
不等于 |
3.逻辑运算
MATLAB提供了两种类型的逻辑运算:一般逻辑运算和捷径运算,见下表:
运算类型 |
运算符与函数 |
说明 |
一般逻辑运算
|
&(and) |
逻辑与 |
|(or) |
逻辑或 |
|
~(not) |
逻辑非 |
|
xor |
逻辑异或 |
|
捷径运算
|
&& |
支标量值的捷径与 |
|| |
对标量值的捷径或 |
捷径运算符只对标量值执行逻辑与和逻辑或运算。捷径运算首先判断第一个运算对象,如果可以知道结果,直接返回,而不继续判断第二个运算对象。捷径运算提高了程序运算效率,可以避免一些不必要的错误。例如:
>>x=b&&(a/b>10) %相当于x=(b&&(a/b>10))
如果b=0,捷径运算符不会计算(a/b>10)的值了,也就避免了被0除的错误。
4.特殊运算符
除了以上运算符,MATLAB还经常使用一些特殊的运算符,见下表:
运算符 |
说明 |
运算符 |
说明 |
[ ] |
生成向量和矩阵 |
… |
续行符 |
{ } |
给单元数组赋值 |
, |
分隔矩阵下标和函数参数 |
( ) |
在算术运算中优先计算;封装函数参数;封装向量或矩阵下表 |
; |
在括号内结束行;禁止表达式显示结果;隔开声明 |
= |
用于赋值语句 |
: |
创建矢量、数组下标;循环迭代 |
’ |
两个’之间的字符为字符串 |
% |
注释;格式转换定义中的初始化字符 |
. |
域访问 |
@ |
函数句柄,类似于C语言中的取址运算 |