为什么这个matlab数组比较返回false?

时间:2017-01-17 08:06:12

标签: arrays matlab

当我将轴的位置与包含完全相同值的double数组进行比较时,比较返回false。下面,我使用continueA == B比较两者:

isequal(A,B)

即。两个数组都包含双精度值。两个数组看起来都是相同的(我创建了具有那些精确值的轴,所以我确定没有小的额外值,例如1e-9左右。鉴于Matlab没有添加后验数据)。 >> ax = gca; >> ax.Position ans = 0.0500 0.1000 0.9000 0.4250 >> comparePosArray = [0.0500 0.1000 0.9000 0.4250] comparePosArray = 0.0500 0.1000 0.9000 0.4250 >> comparePosArray == ax.Position ans = 1×4 logical array 0 1 0 0 >> isequal(comparePosArray, ax.Position) ans = logical 0 >> class(comparePosArray) ans = double >> class(ax.Position) ans = double 声称ONE值相同,为什么?为什么不呢?为什么A == B不返回true?

如果我使用isequal然后使用num2str(),则比较将返回true。

非常感谢所有帮助。

0 个答案:

没有答案