为了账号安全,请及时绑定邮箱和手机立即绑定

MATLAB中的&和&&有什么区别?

MATLAB中的&和&&有什么区别?

一只萌萌小番薯 2019-12-26 10:08:21
MATLAB中的逻辑运算符&和&&逻辑运算符有什么区别?
查看完整描述

3 回答

?
翻阅古今

TA贡献1780条经验 获得超5个赞

单个&符是逻辑AND运算符。双&符&&还是一个逻辑AND运算符,采用短路行为。短路仅表示仅当第一个操作数(左侧)未完全确定结果时才评估第二个操作数(右侧)

A和B(评估A和B)

A && B(仅当A为真时才评估B)


查看完整回答
反对 回复 2019-12-26
?
蝴蝶刀刀

TA贡献1801条经验 获得超8个赞

正如其他人已经提到的,&是逻辑AND运算符,&&是短路AND运算符。它们在操作数的求值方式以及是否对数组或标量进行操作方面有所不同

  • &(AND运算符)和|(OR运算符)可以按元素方式对数组进行运算。

  • &&||是短路版本,仅当结果未完全由第一个操作数确定时才评估第二个操作数。它们只能在标量上运行,而不能在数组上运行。


查看完整回答
反对 回复 2019-12-26
?
幕布斯6054654

TA贡献1876条经验 获得超7个赞

与其他语言类似,&是逻辑按位运算符,&&而是逻辑运算。


例如(请原谅我的语法)。


如果..


A = [True True False True]

B = False

A & B = [False False False False]

..要么..


B = True

A & B = [True True False True]

对于&&,仅当左操作数为true时才计算右操作数,并且结果是单个布尔值。


x = (b ~= 0) && (a/b > 18.5)


希望很清楚。


查看完整回答
反对 回复 2019-12-26
  • 3 回答
  • 0 关注
  • 1299 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信